2010-11-26 113 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。