iis服务器助手广告广告
返回顶部
首页 > 资讯 > 精选 >Xpath元素选择器怎么在Scrapy中使用
  • 512
分享到

Xpath元素选择器怎么在Scrapy中使用

2023-06-14 07:06:39 512人浏览 安东尼
摘要

这期内容当中小编将会给大家带来有关Xpath元素选择器怎么在scrapy中使用,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。1. 元素的多级定位与跳级定位多级定位:依靠html中的多级元素逐步缩小范围re

这期内容当中小编将会给大家带来有关Xpath元素选择器怎么在scrapy中使用,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。

1. 元素的多级定位与跳级定位

多级定位:依靠html中的多级元素逐步缩小范围

response.xpath('//table/tbody/tr/td')//如果知道元素所属的下标可以用下标选择response.xpath('//table/tbody/tr[1]/td')

跳级定位:符号“//”表示跳级定位,即对当前元素的所有层数的子元素(不仅是第一层子元素)进行查找,一般xpath的开头都是跳级定位

response.xpath('//span//table')

2. 依靠元素的属性定位

每个html元素都有很多属性,如id、class、title、href、text(href和text往往可以配合正则表达式)等,这些属性往往具有很强的特殊性,结合元素多级定位或跳级定位会更准确高效,下面举几个典型的例子,其他的举一反三

利用class定位

response.xpath('//td[@class="mc_content"]')

利用href配合正则表达式定位

response.xpath('//a[re:test(@href,"^\/index\.PHP\?m=News&a=details&id=1&NewsId=\d{1,4}")]')

利用text结合正则表达式定位

a=response.xpath('//a[re:test(text(),"\w{4}")]')

此外,xpath还有对于html元素操作的两个实用的函数(可以用正则表达式代替)——starts-with和contains;

a=response.xpath('//a[starts-with(@title,"注册时间")]')a=response.xpath('//a[contains(text(),"闻")]')

3. 提取元素或元素的属性值

首先是最基本的extract()函数,提取被定为的元素对象

a=response.xpath('//a[contains(text(),"闻")]').extract()//如果被定为的元素对象有多个,可以有用下标指定a=response.xpath('//a[contains(text(),"闻")]').extract()[1]

提取元素的属性

//提取texta=response.xpath('//a[contains(text(),"闻")]/text()').extract()//获取hrefa=response.xpath('//a[contains(text(),"闻")]/@href').extract()//获取namea=response.xpath('//a[contains(text(),"闻")]/@name').extract()

此时我们的正则表达式又闲不住了(scrapy自带的函数),可以对提取的元素进行选择

//对href中的部分字符串进行选择response.xpath('//a[@name="_l_p_n"]/@href').re('\/s.*?list\.htm')

在这里关于xpath的所有用法基本总结完毕,只是由于xpath是对静态元素进行匹配选择,对于javascript往往束手无策,这时不得不用一个自动化测试工具——selenium,可以实现各种动态事件和静态元素的选择,只是selenium往往比较吃内存,响应时间也比较慢,对于大型的爬虫任务尽量不要使用,毕竟有一些javascript元素是内嵌在网页代码中的,这时候结合万能的正则表达式,xpath往往能够实现。如下:

link = re.search("javascript:GoToPage\('(.*?)'", value) //value为包含该段的字符串

上述就是小编为大家分享的Xpath元素选择器怎么在Scrapy中使用了,如果刚好有类似的疑惑,不妨参照上述分析进行理解。如果想知道更多相关知识,欢迎关注编程网精选频道。

--结束END--

本文标题: Xpath元素选择器怎么在Scrapy中使用

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

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

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

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

下载Word文档
猜你喜欢
  • Xpath元素选择器怎么在Scrapy中使用
    这期内容当中小编将会给大家带来有关Xpath元素选择器怎么在Scrapy中使用,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。1. 元素的多级定位与跳级定位多级定位:依靠html中的多级元素逐步缩小范围re...
    99+
    2023-06-14
  • Scrapy元素选择器Xpath用法汇总
     众所周知,在设计爬虫时,最麻烦的一步就是对网页元素进行分析,目前流行的网页元素获取的工具有BeautifulSoup,lxml等,而据我使用的体验而言,Scrapy的元素...
    99+
    2024-04-02
  • CSS子元素选择器怎么使用
    本文小编为大家详细介绍“CSS子元素选择器怎么使用”,内容详细,步骤清晰,细节处理妥当,希望这篇“CSS子元素选择器怎么使用”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。 选择...
    99+
    2024-04-02
  • Scrapy中怎么利用Xpath选择器从网页中采集目标数据
    Scrapy中怎么利用Xpath选择器从网页中采集目标数据,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。/具体实现/1、针对标题,在上篇文章中...
    99+
    2024-04-02
  • css元素选择器怎么用
    这期内容当中小编将会给大家带来有关css元素选择器怎么用,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。一个完整的HTML页面是有很多不同的标签组成,而标签选择器,则是决定...
    99+
    2024-04-02
  • jQuery元素选择器怎么用
    今天小编给大家分享一下jQuery元素选择器怎么用的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一...
    99+
    2024-04-02
  • css怎么使用选择器排除元素
    CSS是前端开发中的重要技能之一,除了基本的选取元素、修改样式外,选择排除也是CSS中一个非常重要的知识点。本文将为大家讲解CSS中的选择排除,并提供实际案例以供参考。选择器介绍在学习选择排除之前,我们先来了解一下CSS选择器的基础知识。C...
    99+
    2023-05-14
  • html中元素/标签选择器怎么用
    这篇文章将为大家详细讲解有关html中元素/标签选择器怎么用,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。元素/标签选择器h2,h3,h4,h5,h6,h7 { font-size:1...
    99+
    2023-06-27
  • HTML子元素选择器怎么用
    本文小编为大家详细介绍“HTML子元素选择器怎么用”,内容详细,步骤清晰,细节处理妥当,希望这篇“HTML子元素选择器怎么用”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。 子...
    99+
    2024-04-02
  • 怎么使用CSS3中的结构伪类选择器和伪元素选择器
    这篇文章主要介绍怎么使用CSS3中的结构伪类选择器和伪元素选择器,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!结构伪类选择器介绍结构伪类选择器是用来处理一些特殊的效果。结构伪类选择器属性说明表 属性描述E:...
    99+
    2023-06-08
  • HTML中如何使用子元素选择器
    本篇内容主要讲解“HTML中如何使用子元素选择器”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“HTML中如何使用子元素选择器”吧! selector)。 例...
    99+
    2024-04-02
  • CSS元素选择器如何使用
    这篇文章主要介绍“CSS元素选择器如何使用”,在日常操作中,相信很多人在CSS元素选择器如何使用问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”CSS元素选择器如何使用”的疑惑...
    99+
    2024-04-02
  • css如何使用元素选择器
    这篇文章主要为大家展示了“css如何使用元素选择器”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“css如何使用元素选择器”这篇文章吧。元素选择器标记选择器是指用...
    99+
    2024-04-02
  • css怎么选择元素
    这篇文章给大家分享的是有关css怎么选择元素的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。css的全称是什么css的全称是Cascading Style Sheets(层叠样式表),它是一种用来表现HTML或XM...
    99+
    2023-06-14
  • HTML中什么时候使用子元素选择器
    这篇文章主要介绍“HTML中什么时候使用子元素选择器”,在日常操作中,相信很多人在HTML中什么时候使用子元素选择器问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”HTML中什...
    99+
    2024-04-02
  • 怎么使用CSS选择所有子元素
    本文将为大家详细介绍“怎么使用CSS选择所有子元素”,内容步骤清晰详细,细节处理妥当,而小编每天都会更新不同的知识点,希望这篇“怎么使用CSS选择所有子元素”能够给你意想不到的收获,请大家跟着小编的思路慢慢深入,具体内容如下,一起去收获新知...
    99+
    2023-06-08
  • CSS结合元素选择器怎么用
    这篇“CSS结合元素选择器怎么用”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“CSS结合元...
    99+
    2024-04-02
  • CSS中子元素选择器的使用介绍
    这篇文章主要讲解了“CSS中子元素选择器的使用介绍”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“CSS中子元素选择器的使用介绍”吧!与后代选择器相比,子元素...
    99+
    2024-04-02
  • css3类选择器中结合元素选择器和多类选择器的使用案例
    这篇文章主要介绍css3类选择器中结合元素选择器和多类选择器的使用案例,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!具体代码如下所示:<!DOCTYPE html&g...
    99+
    2024-04-02
  • jquery中子元素选择器和后代元素选择器有哪些区别
    本文小编为大家详细介绍“jquery中子元素选择器和后代元素选择器有哪些区别”,内容详细,步骤清晰,细节处理妥当,希望这篇“jquery中子元素选择器和后代元素选择器有哪些区别”文章能帮助大家解决疑惑,下面...
    99+
    2024-04-02
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作