ForeSpider脚本语言帮助文档

脚本概述

一.脚本结构

1.频道

包括“频道脚本”。

2.模板

(1)模板配置

包括“模板脚本”。

(2)链接部分

包括“链接脚本”、“过滤脚本”。

(3)数据部分

包括“数据处理脚本”及“数据过滤脚本”。

(4)字段部分

包括“取值脚本”、“数据清洗脚本”。



二.脚本与可视化配置的关系

1.各部分配置可以完全使用脚本编写,不进行可视化操作;

2.同一步骤既进行了可视化操作的配置,又编写了脚本,则由脚本接管,可视化配置失效;

3.各步骤可以一部分使用脚本编写,一部分使用可视化操作,不重复的配置都有效,重复的配置以脚本优先接管。



三.各操作环节编写的脚本之间的关系

1.上一操作层级的脚本配置区域可以编写涵盖其下面所有操作层级功能的脚本;

2.如果各层级之间的脚本有重复,以其中高层级步骤的脚本优先生效;

3.可以将脚本分散于各操作层级编写,也可以直接在最高操作层级(频道-脚本配置)编写。



四.脚本编写区域

1.频道配置-脚本配置

可以通过脚本配置频道。或者依据脚本向下包含有效的原则,可以在此处用脚本完成对采集源包括模板在内的所有配置。

【频道配置-脚本配置页面】

2.模板配置-代码编辑区

在模板配置的代码编辑区,会根据模板配置操作的不同步骤显示不同的标题。模板脚本、链接脚本、过滤脚本、数据处理脚本、字段取值脚本、字段处理脚本均在此处编写。

【模板配置-代码编辑区】



五.涉及到脚本的操作环节

第一级:频道-脚本配置

在“频道配置”时,通过使用系统内置的脚本语言对频道进行配置。

【频道-脚本配置】

第二级:模板脚本

鼠标点击“默认模板”节点后,“代码编辑区”变成了“模板脚本”状态。模板脚本可以编写整个模板配置的脚本。

模板脚本是模板层面的脚本,配置了模板脚本,模板的处理流程将被改变:

1.如果脚本未正确返回dom区域节点,则该模板的采集完全由该脚本控制。

2.如果脚本返回了一个正确的dom区域节点,则该模板的所有流程(链接抽取或数据抽取)都以该区域节点为基准,区域外的信息和数据将优先作为垃圾数据处理。

【模板脚本】

一.链接脚本

创建了“链接抽取”后,点击“链接抽取”,“代码编辑区”变成了“模板脚本”状态。链接脚本可以编写整个链接抽取的脚本。

链接脚本是链接抽取中的脚本,配置了链接脚本,链接的抽取流程将被改变:

1.如果脚本未正确返回dom区域节点,则该链接抽取的规则将完全由该脚本控制。

2.如果脚本返回了一个正确的dom区域节点,则此链接抽取以返回的区域节点为基准,区域外的链接将被过滤掉。

【链接脚本】

二.数据处理脚本

数据抽取层面的脚本有两种,一种是“数据处理脚本”,一种是“数据过滤脚本”。

创建了“数据抽取”后,点击“数据抽取”,在“数据脚本”处选择“数据处理脚本”或“数据过滤脚本”,代码编辑区会变成选择的数据脚本。

【数据处理脚本】

【数据过滤脚本】

(一)数据处理脚本

一旦有了数据处理脚本,则数据过滤脚本将失效。即数据处理脚本必须选择“数据处理”。

数据处理脚本是数据抽取中的脚本, 配置了数据处理脚本,数据的抽取流程将被改变:

1.如果脚本未正确返回dom区域节点,则该数据抽取的规则将完全由该脚本控制。

2.如果脚本返回了一个正确的dom区域节点,则此数据抽取以返回的区域节点为基准,区域外的数据则优先当做垃圾信息处理。

具体配置方法需要参考帮助文档的“脚本”章节。

(二)数据过滤脚本

数据过滤脚本是与数据抽取并列的脚本,它的作用是对抽取的数据,通过脚本进行过滤。

一旦有了数据过滤脚本,则数据处理脚本将失效,即数据过滤脚本必须选择“数据过滤”。

第四级:

一.过滤脚本

点击“地址过滤”或“标题过滤”,“过滤类型”选择“脚本过滤”,“代码编辑区”变成了“过滤脚本”状态。过滤脚本可以编写地址或标题过滤的脚本。

过滤脚本是链接(标题)过滤中的脚本, 过滤类型必须选择脚本过滤时过滤脚本才能生效,过滤脚本用于处理复杂的链接或标题过滤需求。

【过滤脚本】

“过滤类型选择“正则过滤”时,在“过滤脚本”处可输入正则表达式。

二.字段取值脚本

在“数据抽取”的表单里选择某个字段,“取值类型”选择“脚本取值”,“代码编辑区”变成了“字段取值脚本”状态。这一步是通过脚本来获取字段的填充值。

注意:一旦有了字段取值脚本,则字段处理脚本将失效。

【字段取值脚本】

三.字段处理脚本

在“数据抽取”的表单里选择某个字段,“字段处理”选择“脚本处理”,“代码编辑区”变成了“字段处理脚本”状态。这一步是通过脚本进一步把需要的数据清洗干净。

【字段处理脚本】