scrapy-response.xpath中无法获取标签内容的问题

在使用Scrapy爬取拉勾网Python岗位信息时,遇到response.xpath()无法获取到预期的data-positionid属性值的问题。经过排查,发现可能是XPath语法不适应Scrapy shell环境,或者是XML默认命名空间导致的问题。通过调整XPath表达式或处理命名空间,最终成功获取到数据。
摘要由CSDN通过智能技术生成

春天到了,又是交配、咳咳找工作的季节,各种招聘网站也开始活跃起来,为了服务身边的程序员朋友,于是用scrapy写了一个简单的招聘网站的爬取程序,用来自动获取更新招聘信息。


scrapy使用熟练了,用起来还是挺简单,利索的创建项目,编写spider文件,大体框架搭好,打开拉勾(https://www.lagou.com/zhaopin/python/),然后分析网页结构,使用 chrome浏览器的xpath插件获取标签数据,都没有问题。



按照自己的习惯,虽然在浏览器上获取数据没有问题,自己还是会用scrapy shell 再测试一次,确认没有问题才会往下编码。


然后问题就来了,使用xpath在浏览器中获取数据没有问题,在scrapy shell中运行response.body能获取整个页面的html代码



但是使用response.xpath("//div[@class='s_position_list']/ul/li/@data-positionid")在 shell 中运行的时候,获取的却为空



然后自己又试了两次,还是不行,于是开始google相关文档和问题

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值