2010-11-26 110 views
0
text=u’<a href="#5" accesskey="5"></a><a href="#1" accesskey="1"><font color="#667755">\ue689</font></a><a href="#2" accesskey="2"><font color="#667755">\ue6ec</font></a><a href="#3" accesskey="3"><font color="#667755">\ue6f6</font></a>‘ 

我是一個蟒蛇新手。 我想得到\ ue6ec,\ ue6f6,\ ue6ec,如何獲取這些字符串使用重新模塊。 非常感謝!蟒蛇如何取這些字符串

+0

哇,這個片段看起來有意混淆。這究竟是從哪裏來的? – SingleNegationElimination 2010-11-26 07:43:01

回答

2

Regexp不是使用HTML的好工具。使用Beautiful Soup

+0

謝謝你:)我修好了。 – demas 2010-11-26 07:11:53

2
>>> from BeautifulSoup import BeautifulSoup 
>>> text=u'<a href="#5" accesskey="5"></a><a href="#1" accesskey="1"><font color="#667755">\ue689</font></a><a href="#2" accesskey="2"><font color="#667755">\ue6ec</font></a><a href="#3" accesskey="3"><font color="#667755">\ue6f6</font></a>' 
>>> t = BeautifulSoup(text) 
>>> t.findAll(text=True) 
[u'\ue689', u'\ue6ec', u'\ue6f6'] 
+0

作爲參考,這產生`u'\ ue689 \ ue6ec \ ue6f6'`。 – 2010-11-26 07:14:12

0

如果您知道該頁面將始終具有該格式,請使用BeautifulSoup分析器在HTML中查找您需要的內容。

但是,有時BeautifulSoup可能會由於格式錯誤的HTML而中斷。我建議你使用lxml這是libxml2的python綁定。它將解析並通常糾正格式錯誤的HTML。