首页 新闻 赞助 找找看

java 爬虫.Js网页如何爬取?

0
悬赏园豆:10 [已解决问题] 解决于 2014-12-08 09:49

http://www.yanglee.com/product/product_Lists.aspx?ptype=105015016005


js网站的爬取,我一般就是看页面上请求后台数据 的地址,然后获取JSON数据,

但就是这个网页,怎么爬,获取后台请求的JSON都获取不到啊
 
生成的数据在页面源码里,所以用上面的网址 第一页能获取到,但是 翻页,改参数什么的就不行了 啊
Inszt的主页 Inszt | 初学一级 | 园豆:151
提问于:2014-09-24 12:51
< >
分享
最佳答案
0

你应该请求 http://www.yanglee.com/ajax/ProductSearch.ashx?_=1411554850348&mode=Search&perpage=60&page=4&ProStr=NodeCode%253D%2527105015016005%2527%2520and%2520FlowState%253D99%2520and%2520IsDel%253D0%2520and%2520ProductLevel%253C%253E%2527VIP%2527%2520&strOrder=released%2520desc&ProductState=&jigou=&qixian=&shouyi=&InvestField=&ApplyWay= 这个url page参数可以分页,

请求头信息添加Referer: http://www.yanglee.com/product/product_Lists.aspx?ptype=105015016005

收获园豆:8
喵喵喵猫 | 小虾三级 |园豆:1742 | 2014-09-24 18:37

直接打开什么都没有,你是说要在HttpClient 设置setRequestHeader(“Referer”,“http://www.yanglee.com/product/product_Lists.aspx?ptype=105015016005”) 是吗?我试试

Inszt | 园豆:151 (初学一级) | 2014-09-26 10:06

@assasszt: 是的

喵喵喵猫 | 园豆:1742 (小虾三级) | 2014-09-26 10:10

不好意思,最近才想起这个问题了;果然像你说的,加上来源链接就好使了;
我想知道,为什么是这样呢?

 

还有你是怎么知道 加上这个Referer就行了呢

Inszt | 园豆:151 (初学一级) | 2015-01-22 09:50
其他回答(3)
0

这个确实有点难度,翻页显示的数据列表应该从文件“/ajax/ProductSearch.ashx”入手,看看数据是怎么从中间文件中返回的table数据,这样直接截取table数据就好了

收获园豆:2
| 园豆:332 (菜鸟二级) | 2014-09-26 14:07
0

要爬取js动态生成的数据,可以参考下这个:http://doc.shenjianshou.cn/developmentSkills/useAJAX.html

wangm_xjtu | 园豆:224 (菜鸟二级) | 2016-05-27 19:12
0

这里有个现有的例子,你可以参考一下: 
如何爬取大众点评网上的商家信息(有栗子、附代码) 
https://www.douban.com/group/topic/86269731/

sosozzzx | 园豆:302 (菜鸟二级) | 2016-08-29 16:30
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册