您当前的位置:首页 > IT编程 > python
| C语言 | Java | VB | VC | python | Android | TensorFlow | C++ | oracle | 学术与代码 | cnn卷积神经网络 | gnn | 图像修复 | Keras | 数据集 | Neo4j | 自然语言处理 | 深度学习 | 医学CAD | 医学影像 | 超参数 | pointnet | pytorch | 异常检测 | Transformers | 情感分类 | 知识图谱 |

自学教程:python使用XPath解析数据爬取起点小说网数据

51自学网 2021-10-30 22:43:52
  python
这篇教程python使用XPath解析数据爬取起点小说网数据写得很实用,希望能帮到您。

1. xpath 的介绍

xpath是一门在XML文档中查找信息的语言

优点:

  • 可以在xml中找信息
  • 支持HTML的查找
  • 可以通过元素和属性进行导航

但是Xpath需要依赖xml的库,所以我们需要去安装lxml的库。

安装lxml库

我们先要安装lxml的库,直接在pycharm里安装即可:

XML的树形结构:

元素-元素-属性-文本

使用XPath选取节点:

  • nodename: 选取此节点的所有节点
  • /从根节点选择
  • // 从匹配选择的当前节点选择文档中的节点,而不考虑他们的位置
  • . 选择当前节点
  • .. 选择当前节点的父节点(此处是两个点,浏览器默认显示3个..)
  • /text() 获取当前路径下的文本内容
  • /@xxx 提取当前路径下标签的属性值

选取节点的表达式举例:

2. 爬取起点小说网

在浏览器中获取书名和作者测试

在谷歌里安装一个xpath的插件

在html中查找book-mid-info

我们要获取小说的名称: 也就是 //div[@class='book-mid-info']/h4/a/txt()

再加一个获取作者:

使用xpath获取起点小说网的数据

# 作者:互联网老辛# 开发时间:2021/4/8/0008 8:24import requestsfrom lxml import etreeurl="https://www.qidian.com/rank/yuepiao"headers={'user-agent':'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/70.0.3538.25 Safari/537.36 Core/1.70.3861.400 QQBrowser/10.7.4313.400'}#发送请求resp=requests.get(url,headers)e=etree.HTML(resp.text) #类型转换,把str转变为class 'lxml.etree._ELementprint(type(e))names=e.xpath('//div[@class="book-mid-info"]/h4/a/text()')authors=e.xpath('//p[@class="author"]/a[1]/text()')print(names)print(authors)#名称和作者对应for name,authors in zip(names,authors):    print(name,":",authors)

以上就是python使用XPath解析数据爬取起点小说网数据的详细内容,更多关于python XPath解析数据爬取起点小说网的资料请关注51zixue.net其它相关文章!


python 实现德洛内三角剖分的操作
python入门之算法学习
万事OK自学网:51自学网_软件自学网_CAD自学网自学excel、自学PS、自学CAD、自学C语言、自学css3实例,是一个通过网络自主学习工作技能的自学平台,网友喜欢的软件自学网站。