标签:

网址采集

  • 收藏

网址配置之自定义参数设置讲解

2016/5/5 11:18:26   一孑

自定义参数通常用于较为复杂的网址跳转,或者多用于多页的配置。导航和多页的获取参数值得方法略有不同,导航则通过前后标记直接获取,多页则通过采集数据来获取。

结合实例讲解自定义参数的配置:

网络矿工采集器支持传参的导航模式,这种方式多用于 js 导航的配置操作,我们以一
个实际的例子来进行讲解。
首先我们先看这个网址:
http://tongji.cnki.net/kns55/Navi/YearBook.aspx?id=N2006061480&floor=1,我们需要采集
的数据是点击左侧“目录”中的每一项内容,
1.png

点击打开,采集列表信息的“条目题名”和“页码”。这个采集可能并没有实际的价值,仅作配置讲解说明。

如果仔细观察,当点击每个目录时,页面是采用的ajax技术进行的加载,而且需要采集的数据无法在网页源码中找到。毫无疑问,此时我们需要嗅探器来侦测了。

在此我们使用Fiddler,关于Fiddler的使用,我们不在此进行说明,请百度Fiddler的教程。启动Fiddler,然后在此点击“图片”的链接,查看Fiddler监测的情况,如下图:

2.png

看到了一个请求的网址,查看此网址请求的源码,可以找到我们需要采集的数据,ok,断定就是这个请求地址,在查看详细信息,此为post提交,post数据为:id=N2006061480&code=001?&type=0&fileid=A_N2006061480000001

这样,我们基本就清楚了,入口地址是http://tongji.cnki.net/kns55/Navi/YearBook.aspx?id=N2006061480&floor=1,每次点击目录时会有一个post请求将页面打开,我们需要采集的数据就在这个页面中。所以这是一个导航配置的操作。

开始配置导航规则

请求的地址是post方式,一般情况下post方式都是通过js或一些代码程序来完成,我们查看入口页面的源码,发现目录的每次点击操作都是调用了一个函数GetChildCatalog,并传递了四个参数,而这四个参数恰恰是我们采集页网址的post数据所需要的四个值,这样我们就可以通过导航传参的方式进行配置,将入口页面的参数值,直接传递给导航规则,利用传入的参数值的导航规则最终解析到我们需要采集的页面。

启动网络矿工,新建一个采集任务,新增采集网址,输入网址http://tongji.cnki.net/kns55/Navi/YearBook.aspx?id=N2006061480&floor=1,选中导航采集,点击“增加”按钮,在新打开的窗口,点击“配置导航规则”,选择“导航网址参数配置”,在导航网址中输入:

http://tongji.cnki.net/kns55/Navi/GetChildCatalog.aspx<POST>id=&code=?&type=&fileid=</POST>

黑色字体为请求的网址,红色粗体为post数据,一共有四个参数值,我们需要通过入口页面进行传入,参数类型选择“自定义参数”开始配置参数,参数的配置和采集数据规则配置一样,配置好一个参数后,点击“插入参数”将参数插入,最终配置如下:

3.png

配置好之后,我们可以测试一下导航的效果。

为何需要导航传参,导航一般都是通过点击一个链接进行的,这个链接是显式的,但部分网站可能会采用js操作的方法来进行导航操作,这样导航的链接就是隐式的,针对这种隐式的导航就需要我们自己来拼接网址实现采集,在这个过程需要进行一些参数的赋值,才可以将真正的网址拼接出来实现数据的采集。这就是导航传参的作用。

另外,网络矿工采集器多页采集也可以实现参数传递,此采集示例也可以通过多页采集的方式完成,但多页和导航的应用侧重还有所不同,尽管针对同样的任务可以采用不同的方法。有关多页的讲解可参考我们提供的多页教程。


阅读:3257  评论:0  点赞:41
  • 评论

推荐阅读

QQ咨询

自助客服

我要提问
QQ交流群
102085506
暗号:小矿

电话咨询
0351-7250789
18735171797