2012-09-28 4 views
5

Tôi đang gặp rắc rối hiển thị nội dung, chương trình của tôi :Thay đổi & # 39 vào nhân vật bình thường

#! /usr/bin/python 

import urllib 
import re 

url = "http://yahoo.com" 
pattern = '''<span class="medium item-label".*?>(.*)</span>''' 

website = urllib.urlopen(url) 
pageContent = website.read() 
result = re.findall(pattern, pageContent) 

for record in result: 
    print record 

đầu ra:

Masked teen killed by dad 
First look in &#39;Hotel of Doom&#39; 
Ex-NFL QB&#39;s sad condition 
Reporter ignores warning 
Romney&#39;s low bar for debates 

Vậy câu hỏi là những gì tôi nên đưa vào trong mã của tôi trong để chuyển đổi & # 39 thành các ký tự

+0

có thể nhân đôi với http://stackoverflow.com/questions/57708/convert-xml-html-entities-into-unicode- string-in-python – charlee

Trả lời

8

Trong Python2:

In [16]: text = 'Ex-NFL QB&#39;s sad condition' 

In [17]: import HTMLParser 

In [18]: parser = HTMLParser.HTMLParser() 

In [19]: parser.unescape(text) 
Out[19]: u"Ex-NFL QB's sad condition" 

Trong Python3:

import html.parser as htmlparser 
parser = htmlparser.HTMLParser() 
parser.unescape(text) 
+0

Nó hoạt động tốt! Cảm ơn nhiều – Vor

0

trong Javascript:

text = text.replace(/&#39;/g,"'");