POST网址获取

  1. 何为post网址?就是一般用了ajax或.NET中的一些技术当你请求新内容时,页面只进行局部刷新,地址栏中的URL不变。
  2. 我们处理此类采集时的思路就是用抓包工具,截取请求时提交的内容找出共同特点,
  3. 用火车中的“分页”变量进行替换并给定值范围,这样火车在采集时会自动提交请求内容得到新的内容列表进行采集。

我们着重讲解怎么样抓包,抓哪的包及如何处理抓包得到的数据。

内容的采集和普通页面一样,在此就不多说了。

抓包工具:fiddler

http://www.telerik.com/download/fiddler

方法/步骤

(2)我们用浏览器打开要抓取的页面,例如 http://www.ditan360.com/News/List.aspx?ColumnPageID=15 当你进行翻页时就会发现此页是用post提交翻页请求的,网址不变化。

图片

如图,点击开启抓包模式,在点击左边列表,CTRL+X清空数据流。

图片

  1. 先起始地址,cookie,user-agent 对应设置

图片

分析发现,我们数据包的格式为:

  1. 字段名1=字段值1&字段名2=字段值2&字段名3=字段值3......

所以我们可以通过查找&符号,分析下2次数据包里字段值不同的地方。

对比发现 VIEWSTATE 和EVENTVALIDATION 的值每次都是变化的,且无规律的所以在这里我们给定义成随机值,分别为 [POST随机值1] ,[POST随机值2] 。

PageList1%24ListPage1%24ctl06 字段值每次是根据当前页数字变化的,我们用 [分页] 表示

图片

(6)定义随机值范围

图片

id="__VIEWSTATE" value=" , 结束字符串为 " /> 其他的随机值定义原理类似

图片

这样一个完整的POST采集就设置好了

POST采集实例下载