XPath,全称 XML Path Language,即 XML 路径语言,它是一门在XML文档中查找信息的语言。
XPath 最初设计是用来搜寻XML文档的,但是它同样适用于 HTML 文档的搜索。
使用 XPath 来做相应的信息抽取
插件下载
链接:https://pan.baidu.com/s/1FjgFga3j8FLMnQcS52Vhug
提取码:xpth
将下载完后的文件拖到拓展程序上,报错但是不影响使用
到需要解析的页面上,我这里使用的是虎扑,点击右上角插件便会显现。
查了相应使用,输入的为相对定位
//table[@class="players_table"]//tr/td[3]/a/text()
//table[@class="players_table"]//tr/td[4]/text()
为截图所示不同的例子
#安装requests第三方库 #pip install requests #引用requests库 import requests #pip install lxml #引用lxml库,解析Xpath #lxml 库提供了一个 etree 模块,该模块专门用来解析 HTML/XML 文档 from lxml import etree #数据在哪里(发送的地址) url = 'https://nba.hupu.com/stats/players' #头文件,仿用户访问 F12可查看,这里不展示 headers = {'user-agent': ''} #解析网页 re = requests.get(url,headers = headers) #处理数据,引用的HTML需大写 e = etree.HTML(re.text) #解析响应的数据 nos = e.xpath('//table[@class="players_table"]//tr/td[1]/text()') names = e.xpath('//table[@class="players_table"]//tr/td[2]/a/text()') teams = e.xpath('//table[@class="players_table"]//tr/td[3]/a/text()') scores = e.xpath('//table[@class="players_table"]//tr/td[4]/text()') #是否保存 print(teams) print(scores)