`

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

阅读更多

今天,小编给大家带来的教程为:前嗅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.链接不循环

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

实例:暂无。

分享到:
评论

相关推荐

    GNU Coreutils Cheat Sheet (v1.00)

    权限设置可以控制谁可以读、写和执行文件。 - chown:更改文件的所有者。这可以用于文件的归属转移。 - chroot:运行命令或shell,指定一个新的根目录。这通常用于创建一个“沙箱”环境,隔离进程。 - cksum:打印...

    asp在线考试系统源码

    【ASP在线考试系统源码详解】 ASP(Active Server Pages)是一种经典的服务器端脚本语言,由微软开发,常用于构建动态网页应用。本系统利用ASP技术实现了一个在线考试平台,旨在提供一个便捷、高效的测试环境,使...

    genesis2000脚本编写4 Genesis内部变量

    本文将详细讨论在Genesis2000脚本编程中,如何利用软件内部已经定义好的变量,以及这些变量如何配合不同参数以获得系统内定的值,从而简化编程工作,提升工作效率。 首先,要了解的是info指令,它在Genesis2000中...

    随机不重复抽签源码下载

    本资源提供了一个"随机不重复抽签"的源码下载,主要涉及的是JavaScript编程语言,这也是互联网应用中广泛使用的脚本语言。下面我们将详细探讨这个主题及其相关知识点。 首先,我们要理解“随机不重复抽签”的概念。...

    第1-25课PPT和源码教程

    标题中的“第1-25课PPT和源码教程”表明这是一系列关于编程学习的资源,包含从第1课到第25课的完整教程。这些课程可能涵盖了一个全面的学习路径,从基础概念到高级主题。描述中的“ppt 完整版”提示我们这些课程不仅...

    仿soul开源盲盒源码.zip

    【标题】"仿soul开源盲盒源码.zip"是一个基于盲盒概念的开源项目,模仿了Soul App的部分功能,旨在提供一个线上娱乐和购物的平台。源码的完整性和可用性较高,但可能需要一定的技术背景来完成搭建。 【描述】中提到...

    转:数据抽取核心问题

    5. 源码与工具:在实际操作中,数据工程师会编写脚本或利用开源工具(如Apache Nifi、ETL工具如Informatica、 Talend 或开源Python库如Pandas,以及数据库连接工具如JDBC、ODBC)来实现ETL流程。源码的管理和版本...

    《程序天下:JavaScript实例自学手册》光盘源码

    1.20 在网页中动态添加Script脚本 1.21 用JavaScript随机修改页面的标题 1.22 判断网页加载完毕 1.23 嵌入网页的播放器 1.24 设置指定网页为主页 1.25 使用JavaScript传递页面参数 1.26 页面被冻结 第 2章 按钮特效 ...

    雨楠万能ASP采集程序 简易版 v0.1-ASP源码.zip

    《雨楠万能ASP采集程序简易版 v0.1-ASP源码》是一款基于ASP语言开发的网页数据采集工具,其简易版v0.1旨在为初学者和开发者提供一个简单易用的数据抓取解决方案。ASP(Active Server Pages)是微软公司推出的一种...

    试用Web-Harvest 使用手册

    1. **动态参数**:可以使用变量和表达式,使得脚本更具灵活性。 2. **缓存机制**:支持HTTP缓存,提高性能。 3. **插件扩展**:丰富的插件库,支持自定义扩展,满足特定需求。 **七、学习资源与社区支持** 1. **...

    kettle动态设置输入文件路径

    - **脚本支持**:如果需要更复杂的逻辑,可以使用JavaScript或者Groovy等脚本语言,在Job或Transformation中编写代码动态生成路径。 5. **博文链接解析**: 博文链接&lt;https://skying007.iteye.com/blog/2222481&gt;...

    python167开放领域事件抽取系统.rar

    1. 项目源码:分为前端和后端两部分,前端可能有HTML、CSS和JavaScript文件,后端可能包含Python脚本,如API接口、数据库操作、事件抽取算法等。 2. 数据库文件:可能是.sql格式,用于导入数据库管理系统,或者.json...

    dbnuit2.4.9源码API

    源码API是开发人员理解和利用DBNuit进行二次开发的重要参考资料,它通过doxygen这个文档生成工具,从源代码中提取出函数、类、方法、变量等元素的详细信息,形成易于阅读的文档。 在DBNuit 2.4.9源码API中,我们...

    PHP新版微信上墙微现场婚庆会议大屏幕互动抽奖系统源码

    9. **响应式设计**:考虑到用户可能通过不同设备访问,源码应包含响应式布局,确保在手机、平板和电脑等不同屏幕尺寸上的良好显示。 10. **部署与配置**:系统部署需要合适的服务器环境,如Apache或Nginx服务器,...

    programming in Scala_ch

    - **变量定义**: 在Scala中定义变量的基础语法。 - **函数定义**: 创建函数来封装逻辑并提高代码的复用性。 - **编写Scala脚本**: 如何编写简单的脚本来执行任务。 - **循环和条件语句**: 使用`while`循环和`if`条件...

    PHP个人云盘网站源码.zip

    这个源码可以让你了解并学习如何构建一个类似网盘的平台,允许用户上传、下载、管理自己的文件。尽管这个源码主要用于学习交流,不提供官方的技术支持,但从中我们可以抽取许多关键的PHP开发和云存储服务的知识点。 ...

    小程序 盲盒小程序源码完整图片素材 含前端后端源码.zip

    1. **前端源码**:这是用户可以直接在微信开发者工具中运行和调试的部分,通常由一系列页面文件(WXML、WXSS、JavaScript)组成,用于构建用户界面和处理用户交互。 2. **后端源码**:这部分代码运行在服务器上,...

    基于MATLAB实现的随机森林算法源码.zip

    - `example.m`或`demo.m`:示例脚本,演示如何用源码训练随机森林模型并进行预测。 要深入了解并使用这些源码,你需要熟悉MATLAB编程,理解决策树和随机森林的基本原理,同时能够解读和调整相关参数以优化模型性能...

    kettle 命令行运行作业(kitchen)和转换(pan)以及一路下来编写的例子

    Kettle,也称为Pentaho Data Integration (PDI),是一款强大的ETL(Extract, Transform, Load)工具,用于数据抽取、转换和加载。它提供了一种图形化界面,让用户可以通过拖拽的方式设计复杂的ETL流程,同时支持...

    ace05-data-prep-master.rar

    【ace05-data-prep-master.rar】是一个压缩文件,通常包含源码或其他项目资源,用于数据预处理。从标签"源码"我们可以推断,这个压缩包可能包含一个编程项目,特别是与数据处理相关的代码。文件名暗示了这可能是针对...

Global site tag (gtag.js) - Google Analytics