没有合适的资源?快使用搜索试试~ 我知道了~
温馨提示
有时候,我们天真无邪的使用urllib库或Scrapy下载HTML网页时会发现,我们要提取的网页元素并不在我们下载到的HTML之中,尽管它们在浏览器里看起来唾手可得。 这说明我们想要的元素是在我们的某些操作下通过js事件动态生成的。举个例子,我们在刷QQ空间或者微博评论的时候,一直往下刷,网页越来越长,内容越来越多,就是这个让人又爱又恨的动态加载。 爬取动态页面目前来说有两种方法 分析页面请求(这篇介绍这个) selenium模拟浏览器行为(霸王硬上弓,以后再说) 言归正传,下面介绍一下通过分析页面请求的方法爬取动态加载页面的思路。中心思想就是找到那个发请求的javascript文件所发的请求。 举两个例子,京东评论和上证股票。 后注:本文的两个例子都是get请求,可以显示的在浏览器中查看效果,如果是post请求,需要我们在程序中构造数据,构造方法可以参考我从前的一篇博文Scrapy定向爬虫教程(六)——分析表单并回帖。 京东评论 这是一个比较简单的例子。 首先我们随便找一个热卖的商品,评论比较多。 就这个吧威刚(ADATA) SU800 256G 3D NAND SATA3固态硬盘。 点进去看看这个页面现在的状况 图一 滚动条给的第一印象感觉这页仿佛没多少内容。 键盘F12打开开发者工具,选择Network选项卡,选择JS(3月12日补:除JS选项卡还有可能在XHR选项卡中,当然也可以通过其它抓包工具),如下图 图二 然后,我们来拖动右侧的滚动条,这时就会发现,开发者工具里出现了新的js请求(还挺多的),不过草草翻译一下,很容易就能看出来哪个是取评论的,如下图 图三 好,复制出js请求的目标ur
资源推荐
资源详情
资源评论
收起资源包目录
ScrapySeleniumTest-master.rar (24个子文件)
ScrapySeleniumTest-master
ghostdriver.log 4KB
scrapy.cfg 280B
.idea
misc.xml 288B
modules.xml 302B
workspace.xml 408B
inspectionProfiles
profiles_settings.xml 128B
ScrapySeleniumTest-master.iml 284B
.gitignore 27B
scrapyseleniumtest
ghostdriver.log 4KB
middlewares.py 2KB
pipelines.py 1KB
spiders
__pycache__
__init__.cpython-36.pyc 183B
taobao.cpython-36.pyc 2KB
__init__.py 161B
taobao.py 1KB
__pycache__
pipelines.cpython-36.pyc 2KB
items.cpython-36.pyc 495B
middlewares.cpython-36.pyc 2KB
__init__.cpython-36.pyc 175B
settings.cpython-36.pyc 746B
items.py 363B
__init__.py 0B
settings.py 3KB
README.md 55B
共 24 条
- 1
资源评论
weixin_40245436
- 粉丝: 2
- 资源: 22
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功