python---------xpath提取数据------打破局限

这篇具有很好参考价值的文章主要介绍了python---------xpath提取数据------打破局限。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

作者前言

 欢迎小可爱们前来借鉴我的gtiee秦老大大 (qin-laoda) - Gitee.com

目录

为什么要学习XPATH和LXML类库
什么是XPATH
认识XML
XML的节点关系
常⽤节点选择⼯具
节点选择语法
节点修饰语法
选择未知节点
lxml库
_____________________________________________________________

为什么要学习XPATH和LXML类库

可以利⽤ Xpath 来快速的定位特定元素以及获取节点信息,我们可以理解 为对 html 或 xml 形式的⽂本提取特定的内容

什么是XPATH

Xpath 全称是 xml path language ,Xpath是⼀⻔在 HTML/XML ⽂档中查 找信息的语⾔,可⽤来在HTML/XML ⽂档中对元素和属性进⾏遍 历, XPath 使⽤路径表达式来选取 HTML/XML ⽂档中的节点或者节点集

认识XML

python---------xpath提取数据------打破局限

 XML的节点关系

节点的概念:每个XML的标签我们都称之为节点 ,其中最顶层的节点称为根节
python---------xpath提取数据------打破局限

节点选择语法

python---------xpath提取数据------打破局限

 节点修饰语法

python---------xpath提取数据------打破局限

选择未知节点
python---------xpath提取数据------打破局限

 lxml库

lxml 是 ⼀个HTML/XML的解析器,主要的功能是如何解析和提取 HTML/XML 数据。
利⽤etree.HTML,将字符串转化为Element对象
lxml python 官⽅⽂档: http://lxml.de/index.html 可使⽤ pip 安装: pip install lxml (或通过wheel⽅式安装)
lxml 可以⾃动修正 html 代码
安装:
python---------xpath提取数据------打破局限

 下面我来爬取一个页面来给小可爱们

代码:

import requests
from lxml import etree



def parse_data(html):

    # 创建一个xpath对象
    e_html=etree.HTML(html)
    # print(e_html.xpath('//main[@id="c-626160000"]'))
    for i in e_html.xpath('//main[@id="c-626160000"]'):
        print("/n".join(i.xpath('./p//text()')).strip())
        return "".join(i.xpath('./p//text()')).strip()

def save_data(data):
    with open("小说.txt","w",encoding="utf-8")as f:
        f.write(data)



def parse_url(url,header):
    response = requests.get(url)
    return response


def main():
    """主要的业务逻辑"""
    # url
    url = "https://www.qidian.com/chapter/1021617576/626160000/"
    header = {
        "User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/114.0.0.0 Safari/537.36"
    }
    # 发送请求获取响应
    response = parse_url(url, header)
    # print(response.text)
    html = response.text
    # 数据的提取
    data = parse_data(html)
    # 保存
    save_data(data)


if __name__ == '__main__':
    main()

结果:

python---------xpath提取数据------打破局限

 总结

这里我简单的介绍了xpath的使用和语法,小可爱有哪些不明白的可以私聊了文章来源地址https://www.toymoban.com/news/detail-492532.html

到了这里,关于python---------xpath提取数据------打破局限的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • python爬虫数据解析xpath

    下载地址:百度网盘 请输入提取码 第一步: 下载好文件后会得到一个没有扩展名的文件,重命名该文件将其改为.rar或者.zip等压缩文件,解压之后会得到一个.crx文件和一个.pem文件。新建一个文件夹,将这两个文件放在该文件夹(本人将其命名为xpath-helper)内。 第二步: 将

    2024年02月10日
    浏览(39)
  • python里面将接口返回的json格式数据写入到数据库的两种方案及其局限性

    方案一: 使用MySQLdb或pymysql等Python MySQL数据库连接库将数据插入到MySQL数据库 方案二: 使用pandas库将JSON数据转换为DataFrame对象,然后使用to_sql()方法将数据存入MySQL数据库** 对整体的数据格式支持自定义处理,能处理较为复杂的数据格式 首先,我们使用json.load()函数将\\\"data.

    2024年02月14日
    浏览(43)
  • python爬取boss直聘数据(selenium+xpath)

    以boss直聘为目标网站,主要目的是爬取下图中的所有信息,并将爬取到的数据进行持久化存储。(可以存储到数据库中或进行数据可视化分析用web网页进行展示,这里我就以csv形式存在了本地) python3.8 pycharm Firefox 环境安装: pip install selenium 版本对照表(火狐的) https://firefox-s

    2024年02月07日
    浏览(40)
  • python爬虫数据解析xpath、jsonpath,bs4

    解析数据的方式大概有三种 xpath JsonPath BeautifulSoup 打开谷歌浏览器扩展程序,打开开发者模式,拖入插件,重启浏览器,ctrl+shift+x,打开插件页面 安装在python环境中的Scripts下边,这里就是python库的位置,例如我的地址为:E:pythonpython3.10.11Scripts 解析本地文件etree.parse( \\\'xx.

    2024年02月13日
    浏览(43)
  • Python网页爬虫爬取豆瓣Top250电影数据——Xpath数据解析

    1.1 查看原页面信息 首先打开豆瓣Top250电影页面,其网址是:https://movie.douban.com/top250。 可以发现,该页面展示的电影信息有中英文电影名、导演、主演、上映年份、国籍、电影类型、评分等。 下滑到页面底部,发现第一页有25部电影的数据,并且可以点击页码数实现页面跳转

    2024年02月05日
    浏览(50)
  • “jmeter使用xpath提取器获取请求响应中的value值作为下一个请求的输入”案例

    使用jmeter5.2.1的xpath提取器获取请求响应结果中值作为下一个请求的输入,并在Bean Shell后置处理器中编写通过日志打印 XPath提取器 提取的内容。 提取内容为请求响应结果中的 input type=\\\"hidden\\\" name=\\\"execution\\\" value=\\\"a6cd.........................................................\\\" ,需要提取的为 v

    2023年04月11日
    浏览(78)
  • Python爬虫实战——Lazada商品数据(selenium自动化爬虫,xpath定位)

            在此说明,这个项目是我第一次真正去爬的一个网站,里面写的代码我自己都看不下去,但是已经不想花时间去重构了,所以看个乐呵就好,要喷也可以(下手轻一点)。这篇文算是记录我的学习中出现的一些问题,不建议拿来学习和真拿我的代码去爬Lazada的数据,

    2024年02月02日
    浏览(58)
  • Python提取JSON格式数据

    我们经常会用到json数据,json数据格式主要是用来和不同语言之间进行交互 比如你要给java端的提供数据,你需要将自己的数据转换为json格式才行 所以不管是提供给后端其他人,还是从API返回的数据结果,我们都需要封装成json数据格式或者解析json数据 json的数据格式类似于

    2023年04月24日
    浏览(52)
  • Python爬虫|基础知识点详细汇总(requests、urllib、re、bs4、xpath、PyQuery、jsonpath、多线程、协程、数据保存、selenium)

    1. 请求数据 ① requests (1) 基本使用 参数 对响应内容的操作 (2) Requests进阶:使用Session 为什么要用 Session? Session代表服务器与浏览器的一次会话过程,Session对象存储了特定用户会话所需的信息 例如:一定时间内记录账号密码 (自动登录) 可以加快 requests请求速度 需要客户端登录的

    2023年04月08日
    浏览(53)
  • python表格操作,数据提取分析的用法(2)

      之前我在博客里贴出了操作表格的代码,后面有2位粉丝私聊我说不会用啊,不知道怎么用,我听了之后就立马想出一篇如何使用的博客,谁叫我爱粉丝咧 好废话不多说,先贴出操作表格代码的地址 点这里 1)代码段 我们只需要传入表的路径和表页就能自动读取我们的数据

    2023年04月18日
    浏览(43)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包