用Python做网络爬虫的时候,会对网页的信息进行提取,笔者接触的有正则表达式,BeautifulSoup,Xpath,前面两个都是在国内能够使用的,而Xpath是Chrome的一个插件,因此需要“翻墙”就可以获取到。

笔者在这里提供了Xpath的文件。

一、安装Xpath

链接:https://pan.baidu.com/s/1FsAEKWhqEosMNcaXvxXevg
提取码:y9jv

下载下来后

打开扩展程序,将文件拖进去就可以了Crtl+Shift+X就可以打开Xpath

二、使用Xpath

导入lxml和etree

     mytree = lxml.etree.HTML(content)
# 获取电影的基本信息:
name = mytree.xpath('*//div[@class="movie-brief-container"]//h3[@class="name"]//text()')

通过上述方法,就可以建立Xpath的查询。

三、Xpath的解析方法

  在使用Xpath进行解析的时候,需要对它进行解析,这里附上一些解析的介绍,可以根据他的提示来写Xpath语句

  https://blog.csdn.net/uvyoaa/article/details/80998271

 https://blog.csdn.net/qq_41338249/article/details/81029717

  基本解析方式都一样抓住要点。

Python如何利用Xpath进行解析的更多相关文章

  1. 利用xpath来解析douban电影相对应的信息

    from lxml import etree import requests url = "https://movie.douban.com/chart" headers = {& ...

  2. Python中利用xpath解析HTML

    在进行网页抓取的时候,分析定位html节点是获取抓取信息的关键,目前我用的是lxml模块(用来分析XML文档结构的,当然也能分析html结构), 利用其lxml.html的xpath对html进行分析 ...

  3. python爬虫的页面数据解析和提取/xpath/bs4/jsonpath/正则(2)

    上半部分内容链接 : https://www.cnblogs.com/lowmanisbusy/p/9069330.html 四.json和jsonpath的使用 JSON(JavaScript Ob ...

  4. python爬虫的页面数据解析和提取/xpath/bs4/jsonpath/正则(1)

    一.数据类型及解析方式 一般来讲对我们而言,需要抓取的是某个网站或者某个应用的内容,提取有用的价值.内容一般分为两部分,非结构化的数据 和 结构化的数据. 非结构化数据:先有数据,再有结构, 结构化数 ...

  5. python爬虫中XPath和lxml解析库

    什么是XML XML 指可扩展标记语言(EXtensible Markup Language) XML 是一种标记语言,很类似 HTML XML 的设计宗旨是传输数据,而非显示数据 XML 的标签需要 ...

  6. 利用XPath解析带有xmlns的XML文件

    在.net中,编写读取xml 的程序中提示"未将对象引用设置到对象的实例",当时一看觉得有点奇怪.为什么在读取xml数据的时候也要实例化一个对象.google了才知道,xml文件中 ...

  7. Python+Selenium 利用ID,XPath,tag name,link text,partial link text,class name,css,name定位元素

    使用firefox浏览器,查看页面元素,我们以“百度网页”为示例 一.ID定位元素    利用find_element_by_id()方法来定位网页元素对象 ①.定位百度首页,输入框的元素 ②.编写示 ...

  8. XPath 爬虫解析库

    XPath     XPath,全称 XML Path Language,即 XML 路径语言,它是一门在 XML 文档中查找信息的语言.最初是用来搜寻 XML 文档的,但同样适用于 HTML 文档的 ...

  9. Python爬虫之xpath语法及案例使用

    Python爬虫之xpath语法及案例使用 ---- 钢铁侠的知识库 2022.08.15 我们在写Python爬虫时,经常需要对网页提取信息,如果用传统正则表达去写会增加很多工作量,此时需要一种对数 ...

随机推荐

  1. JAVA 关于JNI本地库加载

    1.调用JNI的时候,通常我们使用System.loadLibrary(String libname)来load JNI library, 同样也可以使用System.load(String file ...

  2. switch只跟在这些之后

    switch case 可以用在他们之后

  3. 把leveldb嵌入到redis.实现真正的数据持久存储

    目前最新版RedisStorage 是基于 redis 2.6.2基础上,加上 leveldb存储引擎. 这个项目是源于 公司项目的passport 用户认证改造.公司一个项目运行了N年.积累了几千万 ...

  4. Gradle 实战(1)—— 配置环境变量

    背景:Gradle 是一款构建工具,继 Ant .Maven 之后的现代构建工具,我会在接下来的博文中陆续介绍,我在工作中是如何使用 Gradle 的. 下载 Gradle 下面是 Gradle 的官 ...

  5. 月饼问题PAT B1020(贪心算法)

    月饼是中国人在中秋佳节时吃的一种传统食品,不同地区有许多不同风味的月饼.现给定所有种类月饼的库存量.总售价.以及市场的最大需求量,请你计算可以获得的最大收益是多少. 注意:销售时允许取出一部分库存.样 ...

  6. 【APT】SqlServer游标使用

    use [ElephantCredit] go begin transaction tran_bank; print '**脚本开始执行!'; declare @tran_error int , @n ...

  7. 10.16JS日记

    1.parseint() 2.parsefloat() 这两个单词运行的时候遇到第一个非数字就结束了 3.var a="hello word"  a这个变量为字符串,每一个字母为字 ...

  8. 函数调用的四种方式 和 相关的 --- this指向

    this:表示被调用函数的上下文对象. arguments:表示函数调用过程中传递的所有参数. 这两个参数都是隐式的函数参数.会静默传递给函数,并且和函数体内显式声明的参数一样可正常访问. argum ...

  9. 转~Jenkins pipeline:pipeline 使用之语法详解

    一.引言 Jenkins 2.0的到来,pipline进入了视野,jenkins2.0的核心特性. 也是最适合持续交付的feature. 简单的来说,就是把Jenkins1.0版本中,Project中 ...

  10. target runtime apache v6.0 not defined解决

    在加载别人的一个项目时,会报该错误,需要先在buildpath中remove v6的版本,再点击add library,选择server runtime,如果eclipse配置过Tomcat,可以选择 ...