|
发表于 2011-7-1 19:45:39
|
显示全部楼层
本帖最后由 zhouchanglin 于 2011-7-1 19:49 编辑
http://lib.cqvip.com/ZK/search.aspx?E=%28Introduce%3D@%29*%28WeeKS%3D258%29&M=&P=1
这个网站吧
本地架设php环境,用php模拟post,获取ScrollPage(11,569,549);里的2,3参数,生成每页的html文件,最后采集这些html文件
href='javascript:ScrollPage(2,389,0);'>2</a>
翻页函数:- function ScrollPage(page,cursor,lc)
- {
- document.DownForm.P.value=page;
- document.DownForm.CC.value=cursor;
- document.DownForm.LC.value=lc;
- document.DownForm.action="/ZK/search.aspx";
- document.DownForm.target="_self";
- document.DownForm.submit();
- }
复制代码 翻页提交的表单- <form name="DownForm" method="post">
- <input type="hidden" name="E" value="(Introduce=@)*(WeeKS=258)" />
- <input type="hidden" name="M" value="" />
- <input type="hidden" name="P" value="1"/>
- <input type="hidden" name="CP" value="1"/>
- <input type="hidden" name="CC" value="0"/>
- <input type="hidden" name="LC" value="0"/>
- <input type="hidden" name="H" value="" />
- <input type="hidden" name="Entry" value="" />
- <input type="hidden" name="S" value="0"/>
- <input type="hidden" name="SJ" id="DownFormSJ" value="0"/>
- <input type="hidden" name="ZJ" value="" />
- <input type="hidden" name="GC" value="" />
- <input type="hidden" name="Type" value="" />
- <input type="hidden" name="strChkRecord" id="strChkRecord" value="" />
- <input type="hidden" name="ChkRecordCount" id="ChkRecordCount" value="0" />
- </form>
复制代码 同时name="CC “被重新设置ScrollPage(11,569,549);中第2个参数,name="LC"-------------第3个参数,好像是来源页和当前页的信息,还是不清楚第2个参数怎么生成的,没有规律,第3个参数就是原来的第2个参数
我是用curl 模拟post,依次获取下一页的关键信息,就是目标页的ScrollPage(11,569,549);里第2,3,参数,然后组成post数据,提交给http://lib.cqvip.com/ZK/search.aspx,开始时测试页码时变的,但内容始终是第一页,最后才发现组合的post数据里有个字段错了
错误的post数据:$postdata='E=%28Introduce%3D@%29*%28WeeKS%3D258%29&M=&P='.$yema.'&CP='.$yema.'&CC='.$cc.'&LC='.$lc.'&H=&Entry=&S=0&SJ=0&ZJ=&Type=&strChkRecord=&ChkRecordCount=0';
其中CP='.$yema错了,应该是CP='.$yema-1,因为是从这页翻页,修改后,可以生成这些html文件,然后火车头采集,由于请求很多分页,所以速度很慢,有雨本人是php菜鸟,一些动态效果也不会,好像缓存输出的,不会,另外这个只能对你这个查询条件有效,当然可以通过第一个页面,获得一些不变的表单字段,然后应该可以通用,我这个php文件还没有做这些
php环境,wamp安装包,使用比较简单,狭义开启curl扩展,默认没有开启
wamp下载地址http://www.wampserver.com/en/
文件:
这是我生成的31页html,说明,一页页的依次向后翻页,得到的html会和原网站相同,路过网站跳跃翻页,东翻西翻,好像会不同,不清楚怎么回事】 |
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有帐号?加入会员
x
|