网页上通过ajax异步加载的数据有什么办法抓取到吗?

WBOY
풀어 주다: 2016-06-06 20:46:22
원래의
1200명이 탐색했습니다.

最近要到某网站上抓取一些数据,我到该网站上看了一下,发现我要抓取的数据是通过ajax异步加载的,有什么办法可以抓取到吗?我打算使用node.js或者php

回复内容:

最近要到某网站上抓取一些数据,我到该网站上看了一下,发现我要抓取的数据是通过ajax异步加载的,有什么办法可以抓取到吗?我打算使用node.js或者php

开发者工具里扫一眼请求的详情,看看需不需要验证(有些网站很二逼的,随便你请求)。如果有任何验证机制,那么你就别费这个心了,爬虫的干活吧。

题主搜一搜headless browser,前端测试框架什么的。

其实有很多方案,selenium,phantomjs,casperjs,qtwebkit等等等等

我们采用的是casperjs。把每个ajax请求完成后保存网页,放入队列,这样的话后面的分析程序就只要分析html就好了。

casperjs这货和nodejs一起使用的时候时不时会有点小问题(我遇到的问题都不大,很好解决),如果不想麻烦,npm安装spookyjs,据说就可以把casperjs作为node的模块来使用了。

当然,请求不复杂,无需验证的话,直接观察请求就可以了。

관련 라벨:
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
최신 이슈
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿