火车采集器软件交流官方论坛

 找回密码
 加入会员
搜索
火车采集器V9版免费下载火车浏览器 - 可视采集,万能群发,全自动脚本工具
楼主: zhouchanglin

js post网站专区

[复制链接]
发表于 2011-2-26 00:32:34 | 显示全部楼层
http://www.csrcsc.com/personal/personalList.aspx

这个网站怎么采集分页呀,请楼主帮忙,万分感谢!
发表于 2011-2-28 01:07:58 | 显示全部楼层
采集不到详细描述里面的图片地址,希望有热心人能帮助一下~万分感谢
http://www.kaimei-nan.com/products.aspx?id=DY04357
 楼主| 发表于 2011-2-28 13:29:21 | 显示全部楼层
本帖最后由 zhouchanglin 于 2011-2-28 13:34 编辑

回复 71# wangrutie

这个网站是比较普遍的post分页网站,使用__doPostBack(eventTarget, eventArgument)控制分页请求

只要了解它的翻页触发方式,就很容易解决这个问题,这个网站应该可以使用3种方式翻页,1.直接输入页码,点翻页按钮2.点击下一页,这个不太方便3.直接点击页码
所以只要考虑它们触发的事件,就可以得到post数据,找到相应部分的源码



1.直接输入页码,点翻页按钮部分
  1. 跳转到:<input name="SQLPager1$TextboxGoToPage" type="text" maxlength="5" id="SQLPager1_TextboxGoToPage" style="width:50px;" />&nbsp;<input type="submit" name="SQLPager1$btnGoToPage" value="确定" id="SQLPager1_btnGoToPage" class="button" onmouseover="this.className='buttonover'" onmouseout="this.className='button'" />
复制代码
可知只是提交了表单,这样SQLPager1$TextboxGoToPage就是最重要的post参数,代表分页,而提交按钮参数SQLPager1$btnGoToPage也是,表明是按了翻页按钮的方式提交的数据

由于数据可能要编码,我试过自己组合的不行,所以我用抓包工具获取了post数据
  1. __EVENTTARGET=&__EVENTARGUMENT=&__LASTFOCUS=&__VIEWSTATE=[POST随机值1]&__SCROLLPOSITIONX=0&__SCROLLPOSITIONY=0&__EVENTVALIDATION=[POST随机值2]&dlstFilter=%D0%D5%C3%FB&txtFind=%CA%E4%C8%EB%B9%D8%BC%FC%D7%D6&SQLPager1%24DropDownListItemsPerPage=30&SQLPager1%24TextboxGoToPage=[分页]&SQLPager1%24btnGoToPage=%C8%B7%B6%A8&SQLPager1%24DropDownListPagesPerPageGroup=5
复制代码
里面参数的意识:__EVENTTARGET------------判断是哪种请求,这个网站可以判断每页显示数量的改变,每组显示页码数量

_SCROLLPOSITIONX=0-------判断滚动条位置x,没有用处好像
__SCROLLPOSITIONY=0--------判断滚动条位置y


dlstFilter------查找指标

txtFind-----------------------关键字,这个数据里德%CA%E4%C8%EB%B9%D8%BC%FC%D7%D6应该是请搜索关键字

SQLPager1%24DropDownListItemsPerPage=30----------------------每页显示数量30
SQLPager1%24TextboxGoToPage=[分页]------------------------输入的页码,代表分页

SQLPager1%24btnGoToPage=%C8%B7%B6%A8---------------------按钮提交,%C8%B7%B6%A8是确定

SQLPager1%24DropDownListPagesPerPageGroup=5--------------每组显示5个页码

这些参数修改下数值就会是不同的效果了,路修改SQLPager1%24DropDownListItemsPerPage=10,那么每页显示10条记录


.直接点击页码部分源码:修改下,这种方式行不通,每页显示5个页码,按钮name是1-5循环的,而value是递增的,所以这种方式不适合这个网站

第5页
  1. <input type="submit" name="SQLPager1$QuickGoTo5" value="5" id="SQLPager1_QuickGoTo5" title="跳至5页"
复制代码
第4页
  1. <input type="submit" name="SQLPager1$QuickGoTo4" value="4" id="SQLPager1_QuickGoTo4" title="跳至4页"
复制代码
可以知道页码点击是个提交按钮,而name是有规律的,包含分页信息,所以可以用SQLPager1$QuickGoTo[分页]=[分页]提交表单,只要把输入页码方式的的post数据做些修改就能得到页码点击的post数据:去掉SQLPager1%24btnGoToPage按钮,也可以去掉页码输入框SQLPager1%24TextboxGoToPage
  1. __EVENTTARGET=&__EVENTARGUMENT=&__LASTFOCUS=&__VIEWSTATE=[POST随机值1]&__SCROLLPOSITIONX=0&__SCROLLPOSITIONY=0&__EVENTVALIDATION=[POST随机值2]&dlstFilter=%D0%D5%C3%FB&txtFind=%CA%E4%C8%EB%B9%D8%BC%FC%D7%D6&SQLPager1%24DropDownListItemsPerPage=30&SQLPager1%24QuickGoTo[分页]=[分页]&SQLPager1%24DropDownListPagesPerPageGroup=5
复制代码
我测试的规则使用的时第1种post数据,获取列表分页,内容页标签没有设置

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?加入会员

x
 楼主| 发表于 2011-2-28 14:23:08 | 显示全部楼层
回复 72# gian

查看源码,这个网站的内容页首先调用了个框架
  1. <iframe id="frame_content" src="picFrm.aspx?id=DY04357" width="767" marginheight="0"
  2.                                     align="middle" scrolling="no" frameborder="0"></iframe>
复制代码
,打开这个地址http://www.kaimei-nan.com/picFrm.aspx?id=DY04357,这个地址里装有商品详情的处理函数ajax请求,并不是可以直接看到图片内容的页面,查看这个页面的源码
  1. <body onload="edit_Rs('DY04357')" >
复制代码
当文档加载后edit_Rs('DY04357'),这个就是商品详情的处理函数ajax请求,传的参数是商品id

下面是edit_Rs源码
  1. var url = "picFrmAjax.aspx?type=";
  2.                         //查看记录edit_Rs('DY04357')
  3.                         function edit_Rs(id)
  4.                         {
  5.                                
  6.                                 var pars = "id=" + id +"&aa="+ (new Date().getTime().toString(36));//ajax请求的参数
  7.                                 new Ajax.Request(url+"2",//url =picFrmAjax.aspx?type=2
  8.                                 {
  9.                                                 method: "get",  //post method请求方式get
  10.                                                 parameters:pars,
  11.                                                 onSuccess : function(response)     //callback function成功后的处理函数
  12.                                                 {
  13.                                                         $("divJJ").innerHTML = response.responseText;        //返回的数据装在divJJ层理
  14.                                                         //alert($("iinfo").value );//oncontextmenu="return false" ondragstart="return false" onselectstart="return false"
  15.                                                 }
  16.                                         }
  17.                                 );
  18.                         }
复制代码
  1. <body onload="edit_Rs('DY04357')" >
  2.                 <div id="divJJ" align="center" class=font></div>//divJJ层
  3.         </body>
复制代码
通过上面函数可以知道ajax请求地址是http://www.kaimei-nan.com/picFrm ... ;id=DY04357&aa=

type=2--------类型
id=DY04357------------商品id,关键的
aa=------------时间字符串,没什么用

这样由内容页到这个地址是2次,属于多页的多页,不过因为商品id可以在内容页的框架里获得,所以可以直接组合成ajax请求地址,这样只要添加多页即可采集到了

只是这个ajax请求地址里德源代码,开始 结束位置不好确定,是不是全是图片,一样格式的呢,这个站商品详情时用图片做的?

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?加入会员

x
发表于 2011-2-28 16:39:14 | 显示全部楼层
http://1x2.bet007.com/oddslist/404905.htm
想采集欧洲赔率,源文件全是js代码,怎么采集啊,好心人帮下,万分感激
 楼主| 发表于 2011-2-28 20:32:52 | 显示全部楼层
本帖最后由 zhouchanglin 于 2011-2-28 20:37 编辑

回复 75# gaozhonghua1211

,这个网站全部是js组合的头部 主体 页尾HTML

导出到excel http://1x2.bet007.com/Export2Excel.aspx?id=404905,直接采这个就行

好像搞错了,这是列表页?

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?加入会员

x
发表于 2011-3-1 08:21:01 | 显示全部楼层
回复 73# zhouchanglin


    谢谢,非常感谢!!!!
发表于 2011-3-1 15:24:37 | 显示全部楼层
回复 76# zhouchanglin

好像有点意思,不过Export2Excel.aspx?列出的只是部分数据,怎能列出所有数据?
发表于 2011-3-8 23:11:24 | 显示全部楼层
http://www.9swing.com/ 这个网站要如何采集全文。。因为要注册用户且登录后里的内容是js调用的
发表于 2011-3-9 10:09:18 | 显示全部楼层
本帖最后由 vmans_liu 于 2011-3-9 10:34 编辑

http://www.ecosopp.com/ecosway/cn/ProductList_cn.jsp?categoryRefNo=300005&pageNo=1
用cn695400登录 http://www.ecosopp.com/ecosway/cn/ShopLoginLink_cn.jsp
,谢谢楼主先
您需要登录后才可以回帖 登录 | 加入会员

本版积分规则

QQ|手机版|Archiver|火车采集器官方站 ( 皖ICP备06000549 )

GMT+8, 2024-11-18 20:44

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表