文档章节

前嗅ForeSpider脚本教程-链接抽取:链接在源码的js变量里写脚本

forespider
 forespider
发布于 04/10 10:48
字数 555
阅读 2
收藏 0

今天,小编给大家带来的教程为:前嗅ForeSpider脚本教程-链接抽取中,链接在源码的js变量里写脚本的实战教程。具体内容如下:

链接地址可在源码中查找到。在目标网页右键,选择“查看源代码”,键盘点击“ctrl+F”,查找目标链接所在位置。目标链接存在于js变量中。

1.链接需要循环

场景:要抽取的一组链接都在源码中出现,集中分布。

示例:获取今日头条热点新闻列表页链接

查看列表页第一条链接,链接地址为“https://www.toutiao.com/group/ 6637244114360336900/”,在该网页,鼠标右键,选择查看源代码,“Ctrl+F”查找字符串“6637244114360336900”,定位其位置。

观察可知,中文字符都以”\u”开头的字符串表示,显示为unicode编码格式,由“站长工具”在线转编码之后即可展示中文。

此外链接地址分割符“/”加了转义符“\”,不过软件已经帮助我们做了转义处理,此处无需担心,直接赋值即可。

将转义后的字符串放置于JSON查看器中(以notepad++的插件“JSON Viewer”为例),则可观察到数据形式为json。

脚本实例:

var str=DOM.GetSource().ToStr(); //获取本链接地址网页源码

var jsonStr=DOM.UnEscape(str.Middle("data = ","]};")+"]}"); //截取数据所在字符串

jScript js;//定义JS变量

var obj=js.RunJson(jsonStr);//解析JSON串,并返回JSON对象

var ar=obj.real_time_news;//获取目标数据所在数组

for(int i=0;i<ar.size;i++) //通过循环添加链接

{

url u;

u.title=ar[i].title;

u.urlname="https://www.toutiao.com"+ar[i].open_url;

u.entryid=CHANN.id;

u.tmplid=2;

RESULT.AddLink(u);

}

2.链接不循环

场景:要抽取少数链接,位置分散,如天猫分类页(三级分类)。

实例:暂无。

© 著作权归作者所有

forespider
粉丝 4
博文 103
码字总数 105800
作品 0
天津
私信 提问
前嗅ForeSpider脚本教程-链接抽取:链接在POST请求里写脚本

今天,小编给大家带来的教程为:前嗅ForeSpider脚本教程-链接抽取中,链接在POST请求里写脚本的实战教程。具体内容如下: 当链接地址在源码中不存在,存在于post请求中时,需要使用浏览器的开...

forespider
04/11
8
0
前嗅ForeSpider脚本教程:频道脚本使用场景及配置关键词搜索

今天,小编给大家带来的教程为:前嗅ForeSpider脚本教程中频道脚本的应用场景以及脚本配置关键词搜索的实战教程。具体内容如下: 一.频道脚本使用场景 当需要手动创建采集源列表,或者完全使...

forespider
04/04
7
0
前嗅ForeSpider脚本教程:脚本概述

本教程主要对前嗅ForeSpider脚本做了详细的介绍。主要内容包括:脚本结构,脚本与可视化配置的关系,各节点脚本之间的关系,以及脚本编辑区。具体内容如下: 一.ForeSpider脚本结构 ForeSpid...

forespider
03/11
6
0
前嗅ForeSpider脚本教程-链接抽取:自定义链接写脚本

今天,小编给大家带来的教程为:前嗅ForeSpider脚本教程-链接抽取中,自定义链接写脚本的实战教程。具体内容如下: 场景:当采集的链接不存在于任何位置,或者想要采集自定义的链接。示例:天...

forespider
04/12
7
0
前嗅ForeSpider教程:如何创建新任务

一,创建新任务操作步骤: 1.添加新任务 点击任务列表右侧,新建任务文件。 【添加任务】 此时会出现一个弹框,可以在弹框中填写采集地址,修改任务名称,以及选择是否需要登录/关键词采集。...

forespider
02/15
1
0

没有更多内容

加载失败,请刷新页面

加载更多

计算机实现原理专题--二进制减法器(二)

在计算机实现原理专题--二进制减法器(一)中说明了基本原理,现准备说明如何来实现。 首先第一步255-b运算相当于对b进行按位取反,因此可将8个非门组成如下图的形式: 由于每次做减法时,我...

FAT_mt
昨天
6
0
好程序员大数据学习路线分享函数+map映射+元祖

好程序员大数据学习路线分享函数+map映射+元祖,大数据各个平台上的语言实现 hadoop 由java实现,2003年至今,三大块:数据处理,数据存储,数据计算 存储: hbase --> 数据成表 处理: hive --> 数...

好程序员官方
昨天
7
0
tabel 中含有复选框的列 数据理解

1、el-ui中实现某一列为复选框 实现多选非常简单: 手动添加一个el-table-column,设type属性为selction即可; 2、@selection-change事件:选项发生勾选状态变化时触发该事件 <el-table @sel...

everthing
昨天
6
0
【技术分享】TestFlight测试的流程文档

上架基本需求资料 1、苹果开发者账号(如还没账号先申请-苹果开发者账号申请教程) 2、开发好的APP 通过本篇教程,可以学习到ios证书申请和打包ipa上传到appstoreconnect.apple.com进行TestF...

qtb999
昨天
10
0
再见 Spring Boot 1.X,Spring Boot 2.X 走向舞台中心

2019年8月6日,Spring 官方在其博客宣布,Spring Boot 1.x 停止维护,Spring Boot 1.x 生命周期正式结束。 其实早在2018年7月30号,Spring 官方就已经在博客进行过预告,Spring Boot 1.X 将维...

Java技术剑
昨天
18
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部