如何使用python BeautifulSoup在<a href标签中绘制数据[重复]
Posted
技术标签:
【中文标题】如何使用python BeautifulSoup在<a href标签中绘制数据[重复]【英文标题】:How to grap data within a <a href tag with python BeautifulSoup [duplicate] 【发布时间】:2016-12-03 08:52:02 【问题描述】:我遇到了 python 2.7.12 使用 BeautifulSoup 抓取一些网页数据的问题,我真的不知道如何在 <a href link </a>
中抓取特定的“title=”标签
直到现在我得到了这段代码的输出:
import urllib2
from bs4 import BeautifulSoup
hdr = 'Accept': 'text/html,application/xhtml+xml,*/*',"user-agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/48.0.2564.116 Safari/537.36"
url = 'REMOVED'
req=urllib2.Request(url,headers=hdr)
urllib2.urlopen(url).read()
html = urllib2.urlopen(req).read()
soup=BeautifulSoup(html,"html5lib")
players = soup.find_all("td", "data-title": "Navn")
player_data = ""
saveFile = open('player_data.txt','w')
for item in players:
player_data = item.contents[0].encode("utf-8")
print player_data
saveFile.write (player_data)
saveFile.close()
我得到这种格式的数据行:
<a href="/da/player/123/lionel-messi/" title="Lionel Messi">Lionel Messi</a>
谁能帮我从 'title=' 中得到具体的名字,我似乎无法让它工作......
提前致谢:)
【问题讨论】:
哦,好吧,如果您认为它是重复的,我很抱歉...我对 python 编程很陌生,并且已经被这个问题困扰了 2 天,相信我,我已经阅读并尝试了很多方法,同样来自***的类似问题,但我还没有看到与我的问题类似的另一个问题......请将我链接到那个原始问题,谢谢;) - 我认为这可能很容易克服有多年的python经验,但我没有:) 【参考方案1】:为了从href代码中获取标题:
players = soup.find('a')['title']
输出:
Lionel Messi
soup.find('a')['title']
是什么?
.find('a')
表示找到a href 标签
['title]
表示从标签中获取title属性
【讨论】:
谢谢你的评论,不知何故......我仍然不知道如何让它工作,我很抱歉,但我对 python 的工作很新鲜......我可以用“一个”解决这个问题吗? -liner" 代码与我的实际代码行:players = soup.find_all("td", "data-title": "Navn") 因为这个需要在那里......否则我没有开始的数据 运行确切的代码行给了我这个错误:TypeError: 'NoneType' object is not iterable 感谢您提供有用的信息,我得到了它与code
player_data = item.contents[0]['title'].encode("utf-8") code
´ 一起工作,谢谢 ;) 以上是关于如何使用python BeautifulSoup在<a href标签中绘制数据[重复]的主要内容,如果未能解决你的问题,请参考以下文章
如何在 python 中使用 Selenium 和 Beautifulsoup 解析网站? [关闭]
如何在 Python 中使用 BeautifulSoup 保存对 HTML 文件所做的更改?
如何在 Python 中使用 BeautifulSoup 解析谷歌搜索结果