遇到问题从里面提取文本刮html标签使用美丽的汤

问题描述:

我使用刮内容遇到问题从里面提取文本刮html标签使用美丽的汤

此方法返回的条目与此类似

<li class="title"><h4><a href="/addons/wow/world-quest-tracker">World Quest Tracker</a></h4></li> 

我的列表中的代码试图提取中间的href标签中的文字,在这种情况下,

World Quest Tracker 

我怎么能完成这个?

试试这个。

from bs4 import BeautifulSoup 

html=''' 
<li class="title"><h4><a href="/addons/wow/world-quest-tracker">World Quest Tracker</a></h4></li> 
''' 
soup = BeautifulSoup(html, "lxml") 
for item in soup.select(".title"): 
    print(item.text) 

结果:

World Quest Tracker 

html_doc = '<li class="title"><h4><a href="/addons/wow/world-quest-tracker">World Quest Tracker</a></h4></li>' 
soup = BeautifulSoup(html_doc, 'html.parser') 
print soup.find('a').text 

这将打印

u'World任务追踪”

我试图提取文本其间将href标签

如果你确实想在href属性的文字,而不是文本内容由<a></a>锚定(您的措辞有点不清楚),请使用get('href')

from bs4 import BeautifulSoup 

html = '<li class="title"><h4><a href="/addons/wow/world-quest-tracker">World Quest Tracker</a></h4></li>' 
soup = BeautifulSoup(html, 'lxml') 
soup.find('a').get('href') 

'/addons/wow/world-quest-tracker'