假设我有一个html页面来源,如:
<p><font face="Arial" color="#400040"><small><strong>
<a href="some_link">description</a>: </strong>some text.</small></font></p>
我想提取“描述部分? 我该怎么做呢。我认为有一种非常pythonic的方式来做到这一点。 感谢
答案 0 :(得分:2)
获取BeautifulSoup。然后:
from BeautifulSoup import BeautifulSoup
soup = BeautifulSoup(your_text)
description = soup.find('a').string
您可能需要修改最后一行以唯一标识您的标记。
答案 1 :(得分:2)
您可以使用BeautifulSoup,请参阅docs:
中的此示例from bs4 import BeautifulSoup
html_doc = '''<p><font face="Arial" color="#400040"><small><strong>
<a href="some_link">description</a>: </strong>some text.</small></font></p>
'''
soup = BeautifulSoup(html_doc)
for link in soup.find_all('a'):
print(link.get('href'))
答案 2 :(得分:1)
>>> from BeautifulSoup import BeautifulSoup
>>> html = '<p><font face="Arial" color="#400040"><small><strong><a href="some_link">description</a>: </strong>some text.</small></font></p>'
>>> soup = BeautifulSoup(html)
>>> soup.find('a', text=True)
u'description'
如果你有多个标签,很可能就是这种情况,你可以这样做:
>>> for link in soup.findAll('a'):
... print link.text