2012-05-12 43 views
0

这是我的示例脚本:urllib2的编码问题

import urllib2, re 

response = urllib2.urlopen('http://domain.tld/file') 
data  = response.read() # Normally displays "the emoticon <3 is blah blah" 

pattern = re.search('(the emoticon)(.*)(is blah blah)', data) 
result = pattern.group(2) # result should contain "<3" now 

print 'The result is ' + result # prints "&lt;3" because not encoded 

正如你所看到的,我得到一个网页,并试图获得一个串出来的,但它的编码不正确,因为我不确定要添加到此脚本中的是什么o使最终结果正确。任何人都可以指出我做错了什么?

+0

你可能想看看[这个问题](http://stackoverflow.com/questions/1208916/decoding-html-entities-with-python)。 –

+0

@Lattyware看着,没有看到太多的帮助,因为我宁愿不使用外部模块。 – Markum

回答

1

试试这个:

>>> import HTMLParser 
>>> h = HTMLParser.HTMLParser() 
>>> h.unescape('wer&amp;wer') 
u'wer&wer'