前嗅ForeSpider脚本教程-连接抽取:连接在POST请求里写脚本

今天,小编给你们带来的教程为:前嗅ForeSpider脚本教程-连接抽取中,连接在POST请求里写脚本的实战教程。具体内容以下:json

当连接地址在源码中不存在,存在于post请求中时,须要使用浏览器的开发者工具来查找连接数据。数组

1.连接须要循环浏览器

场景:一组连接存在于JSON的某个数组中。ide

示例:采集豆瓣电影,列表页的电影连接。工具

查看源文件可知,源文件中只有一部分数据,而下拉列表出现的其余电影信息不存在源码中,此时咱们须要在请求的响应正文中查找数据。在该页面右键点击“审查元素”,下拉,点击“加载更多”,出现一个请求包,查看Response,发现连接地址存在于,返回正文中。post

将Response中的信息粘贴到json查看器中,以notepad++插件“JSON Viewer”为例,定位数据存在路径。url

脚本实例:插件

var urs = “https://movie.douban.com/j/search_subjects?type=movie&t ag=%E7%83%AD%E9%97%A8&sort=recommend&page_limit=20&page_start=60”;code

var groc = EXTRACT.OpenDoc(CHANN,urs,0);blog

if(groc){

var jsonStr = groc.GetDom().GetSource().ToStr();

jScript js;

var json = js.RunJson(jsonStr);

var arr = json.subjects;

for(int i=0;i<arr.size;i++)

{
  url u;

  u.title=””;

  u.urlname=arr[i].url;

  u.entryid=CHANN.id;

  u.tmplid=2;

  RESULT.AddLink(u);

 }

}

2.不循环

场景:少数连接是JSON的某个键值。

示例:暂无。

相关文章
相关标签/搜索