全部 android asp.net C/C++ cshap IOS Java javascript nodejs perl php python ruby web容器 其他 前端 数据库 第三方平台 混合式APP 网络 系统 默认分类

【Hawk】高级教程——post参数采集万方医学网论文

0 115

目标——万方医学网论文列表

http://med.wanfangdata.com.cn/Author/General/A000000001

和普通网页不一样的地方在于点击下一页的时候,URL没有发生变化,不能显眼的看到类似‘page=1’或者‘pge=1’这样的信息。

这就需要我们自己分析网络请求,笔者推荐是汉化更好点的火狐的浏览器——Firefox,右上角的打开菜单下——开发者工具——网络,在chrome浏览器中是更多工具中的开发者工具Network

                           

 

在第一页时,还没有post请求,这时点击下一页,我们看到发生了变化

点击这个POST请求,会弹出详细的请求头和响应头,我们点击 编辑和重发 按钮

他的请求参数就一目了然了,我们要的就是请求主体‘p=2’,这个参数就是页数,如果有些网站不明显可以多尝试几页应该就能明显的看出什么参数是控制页数了

我们回到HAWK开始采集过程

将网址输入到网页采集器,刷新网页,

 使用手气不错提取,

可以点击关闭然后——【否】检查下个目标,一直调整到论文数据出现

进入数据清洗模块,从文本生成我们爬取的网址 http://med.wanfangdata.com.cn/Author/General/A000000001

(之后会再一个教程,说说怎么从一个EXCEl作者列表去万方数据库查找,并自动爬取对应页数,沙漠君的教程里也有这个判断页数的教程)

然后拿一个生成区间数模块到空白列,配置生成1到158的数字,生成模式选择Cross

拖一个”合并多列“到id的列,将开发者工具中的请求主体复制进去,并修改Format值,把”p=2“改为”p={0}“

拖一个”从爬虫转换“到text列中,修改爬虫的属性——post数据:[id]  

就可以完美的爬取了,可以把调试的采集量调到50就很明显了

后续只要写入数据表就可以了,其他就不在本教程中详细说明

 

 

 

热忱回答0