两者都在交互式控制台(空闲)中工作。 我的消息来源:
from HTMLParser import HTMLParser
parser = HTMLParser()
a=autohist # autohist is a string containing source from selenium
tags = []
start = 0
while a.find("alt=\\\"", start) != -1:
find = a.find("alt=\\\"", start)+6
print find
titleartist = ""
while a[find] != "\\":
s = a[find]
titleartist = titleartist + s
find +=1
start=find+1
if titleartist=="Explicit Lyrics":
continue
titleartist = titleartist.replace("&","shit")
#titleartist = parser.unescape(titleartist)
print titleartist
tags.append((titleartist.split(" - ")[1],titleartist.split(" - ")[0]))
但是当我使用selenium Firefox获取html源代码时 例如:
titleartist="Diana Ross & The Supremes"
它打印出来: 戴安娜罗斯shitamp;至高无上的
显然,我想将&
替换为&
,但此示例显示了问题。
答案 0 :(得分:0)
不知何故,第一个while
部分会对其进行双重编码,因此解决方案是将其解码两次。例如:
titleartist.replace("&","&").replace("&","&")