学习了python之后,准备爬虫项目练练手。简单实现爬取网页数据的功能,发现猫眼实时票房展示的数据样本正好符合预期,就记录一下之间遇到的困难与解决办法
目标网址:http://piaofang.meituan.com/dashboard
目标数据:其中绿色框是想要获取的数据种类,红色框是需要获取的具体数据
通过F12查看网页源代码,发现<table>标签里就是需要获取的数据
首先通过scrapy的shell命令:scrapy shell "http://piaofang.meituan.com/dashboard"
查看是否可以获取数据(本人就是在此处遇到了困难,造成无法获取动态加载的目标数据)
执行成功之后就进入了交互模式,可以获取网页的内容,
输入命令:response.xpath("//div/div/div[2]/div[2]/table").extract()
可以获取到数据的种类信息
通过命令:response.xpath("//div/div/div[2]/div[2]/div/div/table").extract()
获取不到数据的具体数值信息:返回的数据是空的
继续查看网页源代码,这些数据是实时加载的,发现数据存放在second-box这个xhr类型文件中,可以通过此处获取数据
注:XHR到底是什么可以参照这篇文章:https://www.cnblogs.com/dengyg200891/p/6564739.html)
选择-右击-可以选择复制链接地址:http://piaofang.meituan.com/second-box
单独打开这个页面地址就可以获取到实时票房数据了。
红色框等数据就是所需要的。只需要通过该地址获取数据即可
这时候再通过命令进入交互模式:scrapy shell "http://piaofang.meituan.com/second-box"
通过命令: response.body。查看到具体数据信息(中文不显示,但不妨碍获取数据)
以上就是爬取数据的流程步骤
爬取数据功能实现地址:https://www.cnblogs.com/no-end-to-learning/p/11775865.html