两者都在交互式控制台(空闲)中工作。我的来源:
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]))
但是当我使用Firefox硒示例获取html源时:
titleartist="Diana Ross & The Supremes"
它印有这样的文字:Diana Ross shitamp; 至尊者
显然,我想替换&
为&
,但是此示例显示了该问题。
不知何故,第一while
部分对其进行了双重编码,因此解决方案是对其进行两次解码。例如:
titleartist.replace("&","&").replace("&","&")
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句