爬虫中xpath的返回空列表,xpath的长短和匹配问题

大厂Python自动化测试面试题合集 题目:函数的作用是什么?调用函数的语法?答案:将独立功能代码封装成模块,复用代码;函数名(实参)。题目:函数 return 作用是什么?无 return 时函数返回什么?多返回值底层是什么类型?答案:返回函数执行结果;无 return 默认返回 None;return x,y,z 底层自动封装为元组。题目:函数四大参数类型分别是什么?定义顺序要求?答案:必选参数、默认参数、可变位置 * args、命名关键字、可变关键字 **kwargs;顺序:必选→默认→*args→命名关键字→**kwargs。 阅读详情

在爬某网站的用户地址的过程中发现,

/html/body/div[3]/div/div[3]/div[2]/ul/li[4] #这是Chrome上直接对应地址条目,右键复制下来的xpath路径

然而以上代码匹配出来是空列表,

//div[3]/div[2]/ul/li[4] #这是最后测试能正确匹配到地址的xpath路径,在后面加个/text()就可以返回地址

现在还不知道为啥xpath有时候越短越能匹配到,先把这个问题抛出来,也许将来会有答案。

对于想爬东西的朋友,有时候爬东西一直返回空的列表,可以遵循以下的方法来debug

**1。**先看看requests.get().text或者content.decode(‘utf-8’),或者urllib里read到的是源码匹不匹配,f12开发者工具找xpath不一定可靠!,原因是复制出来的xpath路径的元素是根据索引来找的,如果要爬取大量同样格式的网站的话,虽然整体布局是一样的,但是可能中间缺少元素,这样的话很有可能中间的某个div[3](只是个比方)之类的标签根本不存在,这样就无法正确匹配到了,更好的办法是!!! 谷歌搜索谷歌应用商店,下载一个插件叫做xpath helper, 最好是多利用xpath的contains或者starts-with等语法,匹配的精度更高。 ,发现问题第一时间看源码对不对,有些甚至源码是加密的,比如煎蛋网。

2。确定源码没问题,就开一个新py文件来调试,分段调试,看哪些信息能成功爬下来,哪些不能,找出了出错的点之后,就抓出来测试,xpath也好beautifulsoup也好,进行路径测试。这样一般能解决绝大部分的问题了。

**3。**之前有在网上看到过例子,用户头跟爬虫息息相关,有哥们换了个用户头之前,一直返回空列表,换了之后麻溜地爬下来了,这也可以作为一种告诫吧。

还有其他建议的欢迎补充,本人也会慢慢完善。

实战指南:基于汇川PLC与EtherNET/IP的无线以太网通信配置详解 本文提供了一份详细的实战指南,讲解如何配置汇川PLC基于EtherNET/IP协议的无线以太网通信。通过硬件选型(如达泰DTD419MB模块)、软件设置(使用AutoShop配置IP与I/O映射)及通信测试,实现PLC间稳定、灵活的数据交换,有效解决工业现场布线难题,提升部署与维护效率。 阅读详情

相关推荐

深入理解命名实体识别(NER)

命名实体识别(NER,Named Entity Recognition)是自然语言处理(NLP)中的一项重要技术,用于从文本中识别出特定类型的实体,并将这些实体分类到预定义的类别中。实体通常包括人名、地名、组织名、日期、时间、数量、货币等。例如,在句子“Barack Obama was born in Hawaii in 1961”中,NER任务的目标是识别“Barack Obama”作为人名,“Hawaii”作为地名,以及“1961”作为日期。

AngelCryToo的专栏 4640

Python爬虫返还内容为空列表

实验室老师给了我们一个爬虫题目,需要我将新闻获取实时最新消息,并发送到微信上。 在我完成老师题目的途中, 我发现我的爬虫爬取的内容是很多个空列表,并且因此卡在这里无法运作。 经过查询资料我得知,像是新闻,资讯这种动态更新的网址, 用普通的检查获取源代码的方法,是无法获取到你想要获取的内容的。 解决方法: 1.按F12调出开发者工具。 2.点击“network”或者“网络”(可能在元素和控制栏的右边,需要滑动滑动条才可发现) 3.点击下

m0_73892503的博客 1703

Win10环境下VS2019离线部署OnnxRuntime的完整指南

本文提供了在Windows 10系统下,为Visual Studio 2019进行OnnxRuntime离线部署的完整教程。针对网络受限环境,详细讲解了如何获取正确的离线安装包、配置本地NuGet源,并逐步指导项目配置与测试,确保AI模型在C++环境中顺利运行。

weixin_29205061的博客 400

爬虫使用xpath解析网页出现空列表的终极解决方案!

点击检查页面的网络,可以看见不同的url传输的数据,来进行异步加载,这种技术在视频网站应用更广。,此时就需要读取不同的url较为复杂,本文不赘述,以后有空发文深刻探讨。一. 查看自己的xpath是否正确:可以通过网页检查(f12)然后右键复制xpath,最好两个都试试也就是完整的xpath又是会犯病,注意一点就是:当xpath出现。我知道这是一个很小的问题,从一开始就知道,但还是解决了一天,为了避免有别人也踩坑,给出。通俗说也就是一个网页可以分开加载,造就不同的连接,其实是不存在的,例如。

termiliter的博客 2836

Win11任务栏图标消失?快速恢复指南

任务栏图标消失是Windows 11操作系统中常见的问题之一,但通过上述方法,用户通常可以轻松解决这一问题。无论是重启Windows资源管理器、使用命令提示符修复、检查系统更新和设置,还是考虑重装系统,都可以帮助用户恢复任务栏图标的正常显示。希望本文的介绍能对用户有所帮助,让Windows 11的使用更加顺畅和愉快。

mmoo_python的博客 5411

基于python的排课表系统,用python编写排课系统

实现一个具体的课程管理系统。(5) 学生可以查看自己选上的课的成绩,以及各个课程的得分、绩点,并给出其平均绩点,但不允许查看年级其他人的成绩。(2) 学生定制专属课表,可以查看整个学期本人的课程安排,包括课程名称、上课时间、上课地点、任课老师、学分等等。(13) 系主任可以查看整个系的全部学生以及他们的平均绩点,可以对每个班进行排名,或者也可以对整个系进行排名。(15) 系主任可以查看整个学期所开设的所有课程,包括这些课程的全部详细信息。(1) 学生基本信息的查询,学生可以对本人的系统登陆密码进行修改。

yang0728y的博客 1999

爬虫使用xpath解析时返回为空,获取不到相应的元素的原因和解决办法

xpath写的对,但是返回值为空 在写爬虫的时候解析网页,使用最多的解析方式就是xpath解析,但是在使用在使用xpath解析的时候,通常会遇到会获取不到相应元素的情况 原因通常是前端做的一些反爬措施,在编写网页的时候通常省略一层标签,但是被省略的标签浏览器会自动补充,修改成正确的结构 我们通过浏览器进行检查的时候,看到的代码结构是已经被浏览器修改后的,而爬虫获取到的是源代码 所以根据修改后的xpath解析源代码会找不到相应的元素 ...

小鱼干儿的博客 1万+

基于STM32L4XX、HAL库的YT8531C-CA以太网收发器(PHY)驱动程序设计

是一款由裕太微推出的高性价比、低功耗的单端口 10/100M 以太网物理层收发器(PHY)。它通过标准的 MII(介质独立接口)或 RMII(精简介质独立接口)与微控制器的 MAC 层连接,实现将数字信号与网络模拟信号之间的转换。支持自动协商(Auto-Negotiation),自动选择最高速率和双工模式。支持 HP Auto-MDIX(自动交叉直连),无需区分直通线或交叉线。低功耗设计,特别适合电池供电或对功耗敏感的 STM32L4 应用。支持 MII 和 RMII 接口,节省引脚(RMII模式)。

zhusl6688的博客 628

xpath,一直返回空列表

xpath,一直返回空列表 爬虫运行返回为空列表。但是,在谷歌浏览器中用xpath组件 可以定位到。检查了好久,一直没有找到问题所在,请大佬们帮忙看看。 爬取的网站是https://hotel.meituan.com/beijing/ #!/usr/bin/env python # coding:utf-8 import json import requests from lxml import ...

qq_43410546的博客 4701

OPENSSL使用方法

预备知识KEY 通常指私钥。CSR 是 Certificate Signing Request 的缩写,即证书签名请求,这不是证书,只是包含申请证书的基本信息。生成证书时要把这个提交给权威的证书颁发机构,颁发机构审核通过之后,再根据这些申请信息生成相应的证书。CRT 即 certificate的缩写,即证书。 X.509 是一种证书格式。对X.509证书来说,认证者总是CA或由CA指定的人,一份...

zxm8513优快云博客 1212

【用unity实现100个游戏之2】复刻实现经典2d平台跳跃游戏《蔚蓝 Celeste》(附工程源码)

蔚蓝》是一款备受好评的独立游戏,由游戏开发工作室开发并由发行。这款游戏于2016年首次发布,并在玩家和评论界收获了广泛赞誉。蔚蓝以其独特的艺术风格和引人入胜的故事而著称。游戏以深海为背景,玩家将扮演一个能够探索水下世界的神秘生物。游戏通过惊人的视觉表现和动态的海洋生态系统为玩家带来了令人难忘的游戏体验。无论是广阔的水下景观还是充满生机的海洋生物,蔚蓝都让玩家感受到深海的神秘和美丽。蔚蓝在玩法上注重探索和解谜。玩家可以在海底环境中自由游动,发现隐藏的地点和秘密,与各种生物互动,并解决环境谜题以继续前进。

向宇的博客,专注php/web全栈 unity游戏开发,欢迎大家评论纠错 4167

Xpath在选择器中正确,在代码中返回的是空列表问题

一、问题: 在进行爬虫的时候我们会用到xpath解析html文件,但是会有一种情况就是在xpath选择器中可以使用,但是在代码中就无法使用的情况。 二、原因: 1.是元素中有tbody的原因,这个元素是html生成时产生的,在使用xpath解析的时候无法解析,因此返回的列表为空值。 2.是因为没有写入获取的内容。比如在xpath选择其中可以使用但是在解析中...

weixin_30570101的博客 3401

Android11.0(R) MTK 平台开机logo动态替换(by logo.bin方式)

实现的效果 客户提供一张格式为 bmp 的开机logo,在 linux 环境下执行制作 logo.bin 脚本文件, apk 拷贝 logo.bin 文件替换系统原有的bin,然后重启 logo 自动更新。 原理分析 MTK 平台的充电图片和开机logo都是打包到 logo.bin 中的 对应的资源路径在源码 vendor\mediatek\proprietary\bootable\bootloader\lk\dev\logo 系统一般预制了很多分辨率文件夹,实际通过 BOOT_LOGO 来确定打包那一个

cczhengv 4585

Paris带你 分析反反爬虫 用不完的遍布世界的毫秒级代理IP

目标网站: http://www.goubanjia.com/ 说实话 爬了什么多ip网站 这个网站的ip可用率是非常高的 但同时反爬虫机制也是稍微高端一点的 如果说用同一个IP进行频繁方位该网站会被Ban的 爬取目标 这些ip看似简单 就是一些数字 可能你认为直接爬取页面进行 re解析就可以 但是re完全行不通 我们来...

weixin_34115824的博客 166

LinePhone3.2.7(android端最新版本) sip客户端

SIP客户端For android:LinePhone3.2.7(最新版本),官网地址:http://www.linphone.org/

汉书HE8,好用的汇编代码编写工具

汉书HE8,好用的汇编代码编写工具早期编写汇编代码所用功能强大

关于xpath正确仍然返回空列表的原因

1.元素中有tbody,xpath无法解析 2.网页有js渲染,requests获取的源代码是渲染前的代码,xpath解析不到这个内容所以返回空 3.获取到的源代码被注释掉了

无唔吾 2988

计算机控制技术及应用

《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。

Python用xpath爬取数据返回空列表解决 python爬虫,关于使用xpath写爬虫获取不到内容, 获取到空列表的解决方案

可能的情况: 1、url的问题 2、xpath路径问题 3、网页标签class,id属性等一定要注意看后面有没有空格 关于xpath路径问题 之前在做的爬虫都是用的xpath去获取内容,又想偷懒,所以就直接在源码那里直接复制路径, 然后就很容易踩雷了(我算是踩了很多坑了,不知道有没有小伙伴和我一样踩过这样的坑): 此时可能会得到如下路径: /html/body/div[2]/div[6]/table/tbody/tr[6]/td[1]/a/span 然后跑开始爬虫,结果...

weixin_45437533的博客 1万+

IMSL CNL 7.0.0 (x86-64)Crack

IMSL CNL 7.0.0 (x86-64)Crack intel的算法库破解文件,这是C++版本的破解文件

关于python使用xpath爬取网页内容返回值为空列表的解决方法

在使用XPath爬取网站中遇到的 写完代码发现运行后返回值为 [] 空列表解决方法:1、首先看看你的这段代码中是否有 "tbody"存在 ,把"tbody"去掉 为什么呢? 因为在用xpath解析网页的时候,会遇到tbody标签。tbody标签有的时候可以解析,有的时候不可以解析,遇到tbody标签时要看网页源代码,如果源代码有tbody标签,就要加上tbody标签才能解析。 如果源代码没有tbody标签,那么tbody标签是浏览器对html文本进行一定的规范化而强行加上去的,这时如果xpath中有tb

m0_57011777的博客 1万+

appium 程序运行时xpath复杂定位

xpath复杂定位

IT从业者 2047

Python爬虫突然提取不出信息了,返回的是空列表的解决办法

一般这种情况,往往是因为网站觉得你操作太频繁了,需要手动验证一下,这个时候手动打开一个网页,根据网页提示进行操作一个,即可继续进行信息提取。 可以用time库里面的sleep操作: # 生成随机数的函数randint from random import randint # 设置睡眠时间,即多久运行一次 from time import sleep # 放到函数里即可,程序执行到这里会进行停顿 sleep(randint(2, 5)) 感兴趣的可以看我的另一篇博客:一次完整的爬虫 利用requests和x

JdiLfc的博客 5398

爬虫剑谱第九页(关于爬取好看视频链接返回空列表的问题<已解决>)

爬虫思路: 在网站首页通过开发者选项选中视频详情页的链接,进入后需要再次进行网页解析并获取视频链接,将最终的视频链接网页进行二进制转码,下载到本地进行永久化保存 遇到的问题: 在进入视频详情页后,通过Xpath获取视频链接的时候一直返回的是空列表,无论是通过在headers中添加Cookie还是Referer,又或者是在requests.get()中添加代理IP等等,都无法解决解决。 问题原因: 通过Xpath获取视频的视频链接是虚假的,在源码中...

weixin_53328988的博客 1959

xpath模糊匹配和几种常用的方法

//label[text()="One way"] //div[contains(@class,'item')] //*[@class='l date']//*[position()< last()] dr = re.compile(r'<[^>]+>',re.S) dd = dr.sub('',html_cont) 去除相关html中的标签

weixin_42039715的博客 3175

爬虫解析库(8. lxml和XPath)

一、内容介绍 尽管正则表达式很厉害,但是写出功能强大的正则表达式不容易,而且遇到不同的页面就要重写,难以维护(确实) Xpath非常容易理解的路径方式选择XML和HTML中的节点,容易维护和编写 本章主要内容: 1、安装lxml 2、用lxml操作XML和HTML文档 3、XPath的基本概念 4、用XPath选取节点(所有节点、子节点、父节点等) 5、用Xpath匹配和选取属性 6、按序选取节点 7、节点轴 8、实战案例,演示使用reque

to_upper的博客 774

Python用xpath爬取数据返回空列表解决

笔者以爬取2018年AAAI人工智能顶会论文元数据为例。其中包括标题(title)和摘要(abstract)等字段 ①tbody问题 URL:2018AAAI的第一篇论文元数据页面 页面如下: 笔者通过谷歌浏览器选取上图红框内容的xpath如下: from lxml import etree import requests url = 'https://aaai.org/ocs/index....

SL_World的博客 4万+

python爬取数据返回空列表_Xpath在选择器中正确,在代码中返回的是空列表问题...

一、问题:在进行爬虫的时候我们会用到xpath解析html文件,但是会有一种情况就是在xpath选择器中可以使用,但是在代码中就无法使用的情况。二、原因:1.是元素中有tbody的原因,这个元素是html生成时产生的,在使用xpath解析的时候无法解析,因此返回的列表为空值。2.是因为没有写入获取的内容。比如在xpath选择其中可以使用但是在解析中没有带入//text()三、解决办法:1.因此解决...

weixin_39712865的博客 2284
上一篇: 关于网页referer以及破解referer反爬虫的办法
下一篇: 【win10】MySQL在cmd下直接连接数据库的方法,不用到bin文件夹下连接!
0x101
博客等级 码龄8年 16粉丝 19原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值