iis服务器助手广告广告
返回顶部
首页 > 资讯 > 后端开发 > Python >Python的xpath数据解析案例分析
  • 224
分享到

Python的xpath数据解析案例分析

2023-06-29 06:06:06 224人浏览 安东尼

Python 官方文档:入门教程 => 点击学习

摘要

这篇“python的xpath数据解析案例分析”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“Python的xpath数据解析

这篇“python的xpath数据解析案例分析”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“Python的xpath数据解析案例分析”文章吧。

xpath基本概念

xpath解析:最常用且最便捷高效的一种解析方式。通用性强。

xpath解析原理

实例化一个etree的对象,且需要将被解析的页面源码数据加载到该对象中

调用etree对象中的xpath方法结合xpath表达式实现标签的定位和内容的捕获。

环境安装

pip install lxml

如何实例化一个etree对象

from lxml import etree

将本地的html文件中的远吗数据加载到etree对象中:

etree.parse(filePath)

可以将从互联网上获取的原码数据加载到该对象中:

etree.HTML(‘page_text')

xpath(‘xpath表达式’)

/:表示的是从根节点开始定位。表示一个层级

//:表示多个层级。可以表示从任意位置开始定位

属性定位://div[@class='song'] tag[@attrName='attrValue']

索引定位://div[@class='song']/p[3] 索引从1开始的

取文本:

  • /text()获取的是标签中直系的文本内容

  • //text()标签中非直系的文本内容(所有文本内容)

取属性:/@attrName ==>img/src

xpath爬取58二手房实例

完整代码

from lxml import etreeimport requestsif __name__ == '__main__':    headers = {        'User-Agent': 'Mozilla/5.0 (windows NT 10.0; Win64; x64) AppleWEBKit/537.36 (KHTML, like Gecko) Chrome/84.0.4147.105 Safari/537.36'    }    url = 'https://xa.58.com/ershoufang/'    page_text = requests.get(url=url,headers=headers).text    tree = etree.HTML(page_text)    div_list = tree.xpath('//section[@class="list"]/div')    fp = open('./58同城二手房.txt','w',encoding='utf-8')    for div in div_list:        title = div.xpath('.//div[@class="property-content-title"]/h4/text()')[0]        print(title)        fp.write(title+'\n'+'\n')

Python的xpath数据解析案例分析

xpath图片解析下载实例

完整代码

import requests,osfrom lxml import etreeif __name__ == '__main__':    headers = {        'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/84.0.4147.105 Safari/537.36'    }    url = 'Https://pic.netbian.com/4kmeinv/'    page_text = requests.get(url=url,headers=headers).text    tree = etree.HTML(page_text)    li_list = tree.xpath('//div[@class="slist"]/ul/li/a')    if not os.path.exists('./piclibs'):        os.mkdir('./piclibs')    for li in li_list:        detail_url ='https://pic.netbian.com' + li.xpath('./img/@src')[0]        detail_name = li.xpath('./img/@alt')[0]+'.jpg'        detail_name = detail_name.encode('iso-8859-1').decode('GBK')        detail_path = './piclibs/' + detail_name        detail_data = requests.get(url=detail_url, headers=headers).content        with open(detail_path,'wb') as fp:            fp.write(detail_data)            print(detail_name,'seccess!!')

Python的xpath数据解析案例分析

xpath爬取全国城市名称实例

完整代码

import requestsfrom lxml import etreeif __name__ == '__main__':    url = 'https://www.aqistudy.cn/historydata/'    headers = {        'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/87.0.4280.141 Safari/537.36',    }    page_text = requests.get(url=url,headers=headers).content.decode('utf-8')    tree = etree.HTML(page_text)    #热门城市   //div[@class="bottom"]/ul/li    #全部城市   //div[@class="bottom"]/ul/div[2]/li    a_list = tree.xpath('//div[@class="bottom"]/ul/li | //div[@class="bottom"]/ul/div[2]/li')    fp = open('./citys.txt','w',encoding='utf-8')    i = 0    for a in a_list:        city_name = a.xpath('.//a/text()')[0]        fp.write(city_name+'\t')        i=i+1        if i == 6:            i = 0            fp.write('\n')    print('爬取成功')

Python的xpath数据解析案例分析

xpath爬取简历模板实例

完整代码

import requests,osfrom lxml import etreeif __name__ == '__main__':    url = 'https://sc.chinaz.com/jianli/free.html'    headers = {        'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/87.0.4280.141 Safari/537.36',    }    page_text = requests.get(url=url,headers=headers).content.decode('utf-8')    tree = etree.HTML(page_text)    a_list = tree.xpath('//div[@class="box col3 ws_block"]/a')    if not os.path.exists('./简历模板'):        os.mkdir('./简历模板')    for a in a_list:        detail_url = 'https:'+a.xpath('./@href')[0]        detail_page_text = requests.get(url=detail_url,headers=headers).content.decode('utf-8')        detail_tree = etree.HTML(detail_page_text)        detail_a_list = detail_tree.xpath('//div[@class="clearfix mt20 downlist"]/ul/li[1]/a')        for a in detail_a_list:            download_name = detail_tree.xpath('//div[@class="ppt_tit clearfix"]/h2/text()')[0]            download_url = a.xpath('./@href')[0]            download_data = requests.get(url=download_url,headers=headers).content            download_path = './简历模板/'+download_name+'.rar'            with open(download_path,'wb') as fp:                fp.write(download_data)                print(download_name,'success!!')

Python的xpath数据解析案例分析

以上就是关于“Python的xpath数据解析案例分析”这篇文章的内容,相信大家都有了一定的了解,希望小编分享的内容对大家有帮助,若想了解更多相关的知识内容,请关注编程网Python频道。

--结束END--

本文标题: Python的xpath数据解析案例分析

本文链接: https://www.lsjlt.com/news/323268.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • Python的xpath数据解析案例分析
    这篇“Python的xpath数据解析案例分析”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“Python的xpath数据解析...
    99+
    2023-06-29
  • python中bs4解析和xpath解析的示例分析
    这篇文章给大家分享的是有关python中bs4解析和xpath解析的示例分析的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。bs4解析原理:实例化一个BeautifulSoup对象,并且将页面源码数据加载到该对象中...
    99+
    2023-06-29
  • 一个Python案例带你掌握xpath数据解析方法
    目录xpath基本概念xpath解析原理环境安装如何实例化一个etree对象xpath(‘xpath表达式’)xpath爬取58二手房实例xpath图片解析下...
    99+
    2024-04-02
  • python数据解析之XPath详解
    目录XPathXPath使用方法案例—58二手房总结XPath XPath即为XML路径语言(XML Path Language),它是一种用来确定XML文档中某部分位置的语言。 x...
    99+
    2024-04-02
  • python数据XPath使用案例详解
    目录XPathXPath使用方法xpath解析原理:安装lxml案例—58二手房XPath XPath即为XML路径语言(XML Path Language),它是一种用来确定XML...
    99+
    2024-04-02
  • 【Python爬虫】数据解析之bs4解析和xpath解析
    🔥一个人走得远了,就会忘记自己为了什么而出发,希望你可以不忘初心,不要随波逐流,一直走下去🎶 🦋 欢迎关注🖱点赞👍收...
    99+
    2023-09-06
    python 爬虫 开发语言
  • Python爬虫必备之XPath解析库的示例分析
    小编给大家分享一下Python爬虫必备之XPath解析库的示例分析,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!一、简介XPath 是一门在 XML 文档中查找信息的语言。XPath 可用来在 XML 文档中对元素和属性进...
    99+
    2023-06-15
  • Python数据分析案例合集
    案例一、利用税务数据分析美国人群收入情况 ...
    99+
    2023-01-31
    合集 案例 数据
  • python爬虫中xpath实例分析
    这篇文章主要介绍“python爬虫中xpath实例分析”,在日常操作中,相信很多人在python爬虫中xpath实例分析问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”python爬虫中xpath实例分析”的疑...
    99+
    2023-06-29
  • Python实战使用XPath采集数据示例解析
    目录lxml发送请求明确需求:解析数据保存数据lxml lxml 是 Python 的一个库,用于解析和呈现 XML 和 HTML。它支持多种内置和第三方 XML 和 HTML 标记...
    99+
    2023-05-16
    Python XPath采集数据 Python XPath
  • SQL数据库的案例分析
    小编给大家分享一下SQL数据库的案例分析,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!数据表PRAGMA foreign_keys =&nbs...
    99+
    2023-06-22
  • 数据分析案例-电影数据可视化分析
    数据介绍 数据为2011-2021电影数据 可视化分析 首先导入本次项目需要的包和数据 import pandas as pdimport numpy as npimport matplotlib.pyplot as pltimport ...
    99+
    2023-10-03
    python 数据分析
  • Python函数参数案例分析
    本篇内容主要讲解“Python函数参数案例分析”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Python函数参数案例分析”吧!1. 参数分类函数,在定义的时候,可以有参数的,也可以没有参数。从函...
    99+
    2023-07-05
  • Python数据分析:案例实操:使用Py
    Python爬虫太火了,没写过爬虫,都不敢说自己学过Python?! 可是刚一开始学,我就遇到了难题----数据分析!听起来很高大上,有没有? 想要做爬虫,就得先学会使用数据分析工具,制作图表这是最基本的。网上发现一个讲Pytho...
    99+
    2023-01-31
    案例 数据 Python
  • Python数据分析案例03——天气K均值聚类分析
    聚类常用的算法肯定是K均值聚类了,本次案例采用陕西的十个地区的天气数据,构建特征,进行聚类分析。 首先数据都装在‘天气数据’这个文件夹里面,如图: 打开其中一个excel,长这个样子    下面开始数据处理 数据预处理  导入包 imp...
    99+
    2023-09-15
    python 数据分析 数据挖掘 pandas numpy
  • Python实现数据可视化案例分析
    目录1. 问题描述2. 实验环境3. 实验步骤及结果1. 问题描述 对右图进行修改: 请更换图形的风格请将 x 轴的数据改为-10 到 10请自行构造一个 y 值的函数将直方图上的数...
    99+
    2024-04-02
  • python爬虫指南之xpath实例解析
    Python爬虫指南之XPath实例解析XPath是一种用于在XML文档中进行导航和查找元素的语言。在爬虫中,XPath可以用于解析...
    99+
    2023-08-15
    python
  • Python数据分析matplotlib折线图案例处理
    目录前言python之matplotlib使用系统字体实例1:温度变化统计实例2:交友数量折线图前言 以下分享折线图小案例,matplotlib还可以进行多种图形的绘制,可以进入官网...
    99+
    2024-04-02
  • python实操案例分析
    本篇内容主要讲解“python实操案例分析”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“python实操案例分析”吧!看到这个先思考,自己怎么输出他?为什么它有颜色?特殊符号去哪找?特殊符号在符...
    99+
    2023-06-29
  • Python爬虫案例分析
    本篇内容介绍了“Python爬虫案例分析”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成! 一、论述这几个案例以前是给一些想进入Pyt...
    99+
    2023-06-17
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作