iis服务器助手广告广告
返回顶部
首页 > 资讯 > 后端开发 > Python >python爬虫lxml库解析xpath网页过程示例
  • 574
分享到

python爬虫lxml库解析xpath网页过程示例

2024-04-02 19:04:59 574人浏览 安东尼

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

摘要

目录前言(一)xpath是什么(二)xpath的基本语法 路径查询。(三) lxml库(四)lxml库的使用 导入lxml.etree(五)实例演示前言 在我们抓取网页内容的时候,通

前言

在我们抓取网页内容的时候,通常是抓取一整个页面的内容,而我们仅仅只是需要该网页中的部分内容,那该如何去提取呢?本章就带你学习xpath插件的使用。去对网页的内容进行提取。

(一)xpath是什么

xpath是一门在XML文档中查找信息的语言,xpath可用来在XML 文档中对元素和属性进行遍历,主流的浏览器都支持xpath,因为html页面在DOM中表示为XHTML文档。

xpath语言是基于XML文档的树结构,并提供了浏览树的能力,通过多样的标准来选择节点。从而找到我们想要的数据。

首先我们需要在chrome浏览器中安装xpath插件。
可以到谷歌应用商店搜索下载。

安装好之后重启浏览器按下快捷键Ctrl +Shift+X网页上会出现黑色的框就表示成功啦!

(二)xpath的基本语法 路径查询。

// : 查找所有子孙节点,不考虑层级关系
/ : 找直接子节点

谓词查询

//div[@id]
//div[@id=“maincontent”]

属性查询

//@class

模糊查询

//div[contains(@id, “he”)]
//div[starts -with(@id, “he”)]

内容查询

//div/h1/text()

(三) lxml库

lxml是python的一个解析库,支持HTML和XML的解析,支持XPath解析方式,而且解析效率非常高。
在使用前我们需要在PyCharm里安装lxml库。
在终端输入指令即可:

pip install lxml -i https://pypi.douban.com/simple

注意:必须安装在我们当前所使用的环境下

(四)lxml库的使用 导入lxml.etree

from lxml import etree

解析本地文件

tree = etree.parse(xxx.html) #解析本地文件

解析服务器响应文件

tree = etree.HTML(content) #解析网页文件

返回结果

result = tree.xpath('//div/div/@aria-label')[0]

注:xpath返回的结果类型为列表,当结果有许多值时我们可以使用下标来取我们想要的值。

(五)实例演示

import urllib.request
from lxml import etree
import urllib.parse
url ='Https://www.baidu.com/s?'
headers = {
    'User-Agent': 'Mozilla/5.0 (windows NT 10.0; Win64; x64) AppleWEBKit/537.36 (KHTML, like Gecko) Chrome/98.0.4758.102 Safari/537.36'
}
cre_data = {
    'wd' : '这里写关键词'
}
data = urllib.parse.urlencode(cre_data)
url = url + data
request = urllib.request.Request(url = url , headers = headers )
response = urllib.request.urlopen(request)
content = response.read().decode('utf-8')
print(content)
# tree = etree.parse(xxx.html) #解析本地文件
tree = etree.HTML(content)  #解析网页文件
result = tree.xpath('//div/div/@aria-label')[0]
print(result)

以上就是python爬虫lxml库解析xpath网页过程示例的详细内容,更多关于Python爬虫lxml库解析xpath网页的资料请关注编程网其它相关文章!

--结束END--

本文标题: python爬虫lxml库解析xpath网页过程示例

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

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

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

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

下载Word文档
猜你喜欢
  • python爬虫lxml库解析xpath网页过程示例
    目录前言(一)xpath是什么(二)xpath的基本语法 路径查询。(三) lxml库(四)lxml库的使用 导入lxml.etree(五)实例演示前言 在我们抓取网页内容的时候,通...
    99+
    2024-04-02
  • python怎么爬虫lxml库解析xpath网页
    这篇文章主要介绍“python怎么爬虫lxml库解析xpath网页”,在日常操作中,相信很多人在python怎么爬虫lxml库解析xpath网页问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”python怎么爬...
    99+
    2023-06-30
  • Python爬虫必备之XPath解析库的示例分析
    小编给大家分享一下Python爬虫必备之XPath解析库的示例分析,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!一、简介XPath 是一门在 XML 文档中查找信息的语言。XPath 可用来在 XML 文档中对元素和属性进...
    99+
    2023-06-15
  • python网页解析器掌握第三方lxml扩展库与xpath的使用示例
    这篇文章将为大家详细讲解有关python网页解析器掌握第三方lxml扩展库与xpath的使用示例,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。1、导入 lxml 扩展库、并创建对象# -*-&n...
    99+
    2023-06-14
  • python爬虫指南之xpath实例解析
    Python爬虫指南之XPath实例解析XPath是一种用于在XML文档中进行导航和查找元素的语言。在爬虫中,XPath可以用于解析...
    99+
    2023-08-15
    python
  • python爬虫教程之bs4解析和xpath解析详解
    目录bs4解析原理:如何实例化BeautifulSoup对象:用于数据解析的方法和属性:xpath解析xpath解析原理:实例化一个etree对象:xpath( ‘xpa...
    99+
    2024-04-02
  • python爬虫指南之xpath实例解析(附实战)
    目录前言环境的安装属性定位索引定位取文本取属性总结前言 XPath,全称XML Path Language,即XML路径语言,它是一门在XML文档中查找信息的语言,它最初是用来搜寻X...
    99+
    2024-04-02
  • python 网页解析器掌握第三方 lxml 扩展库与 xpath 的使用方法
    今天说的则是使用另外一种扩展库 lxml 来对网页完成解析。同样的,lxml 库能完成对 html、xml 格式的文件解析,并且能够用来解析大型的文档、解析速度也是相对比较快的。 要...
    99+
    2024-04-02
  • Python爬虫网页,解析工具lxml.html(二)
    【前情回顾】如何灵活的解析网页,提取我们想要的数据,是我们写爬虫时非常关心和需要解决的问题。从Python的众多的可利用工具中,我们选择了lxml的,它的好我们知道,它的妙待我们探讨。前面我们已经从HTML字符串转换成的HtmlElemen...
    99+
    2023-06-02
  • Python 爬虫网页,解析工具lxml.html(一)
    狭义上讲,爬虫只负责抓取,也就是下载网页。而实际上,爬虫还要负责从下载的网页中提取我们想要的数据,即对非结构化的数据(网页)进行解析提取出结构化的数据(有用数据)。比如,我们要抓取了一个新闻页面的网页(html)下来,但我们想要的是这个网页...
    99+
    2023-06-02
  • java编程实现简单的网络爬虫示例过程
    本项目中需要用到两个第三方jar包,分别为 jsoup 和 commons-io。 jsoup的作用是为了解析网页, commons-io 是为了把数据保存到本地。 1.爬取贴吧 第...
    99+
    2024-04-02
  • 华为官方解析何为Python爬虫的示例分析
    今天就跟大家聊聊有关华为官方解析何为Python爬虫的示例分析,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。据华为中国官方消息,华为中国发文《小白看...
    99+
    2024-04-02
  • python爬虫中多线程和多进程的示例分析
    小编给大家分享一下python爬虫中多线程和多进程的示例分析,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!python是什么意思Python是一种跨平台的、具有解释性、编译性、互动性和面向对象的脚本语言,其最初的设计是用于...
    99+
    2023-06-14
  • python网络爬虫实现个性化音乐播放器示例解析
    目录前言开发组件功能流程分析基于python的个性化音乐下载器模块详细(一)前端模块(二)后端模块前言 当前很多人在闲暇时喜欢听音乐,那么基于这种现象,我也是肝了几个小时完成了基于p...
    99+
    2024-04-02
  • python爬虫之异常捕获及标签过滤的示例分析
    这篇文章主要介绍了python爬虫之异常捕获及标签过滤的示例分析,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。增加异常捕获,更容易现问题的解决方向import ss...
    99+
    2023-06-15
  • Python爬虫解析网页的4种方式分别是什么
    本篇文章为大家展示了Python爬虫解析网页的4种方式分别是什么,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。用Python写爬虫工具在现在是一种司空见惯的事情,每个人都希望能够写一段程序去互联网上...
    99+
    2023-06-16
  • Python异步爬虫多线程与线程池示例详解
    目录背景异步爬虫方式多线程,多进程(不建议)线程池,进程池(适当使用)单线程+异步协程(推荐)多线程线程池背景 当对多个url发送请求时,只有请求完第一个url才会接着请求第二个ur...
    99+
    2024-04-02
  • python教程网络爬虫及数据可视化原理解析
    目录1 项目背景1.1Python的优势1.2网络爬虫1.3数据可视化1.4Python环境介绍1.4.1简介1.4.2特点1.5扩展库介绍1.5.1安装模块1.5.2主要模块介绍2...
    99+
    2024-04-02
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作