前嗅ForeSpider教程:创建模板

今天,小编为大家带来的教程是:如何在前嗅ForeSpider中创建模板。主要内容有:模板的概念,模板的配置方式,模板的高级选项,具体内容如下:

一,模板的概念

模板列表的层级相当于网页跳转的层级。模板一类似于网站首页,每个模板代表了同一层级的页面,通过适当的配置,可以采集全站数据。
正如网站是通过链接之间的跳转,来实现网站各层级页面的连接,ForeSpider也是通过模板中的链接抽取,来实现模板之间的关联。通过抽取网页中的全部链接,再进行精准过滤,就可以既全面又精确的获取所需的全部数据。
正如网站通过正文/数据页展示数据,ForeSpider也是通过模板中的数据抽取,来获取所需数据。

二,模板的配置方式

1.模板的创建
模板的创建,有如下三种情况:
①新建任务后:创建新的任务之后,选择页面需要抽取的内容,点击完成后,软件自动创建对应抽取内容的模板。
②自动创建后续模板:点击配置向导上方的“下一步”,会自动创建模板。
③手动创建模板:点击模板列表上方的添加按钮,创建模板。

2.抽取所需内容
根据内置浏览器显示的页面内容,选择本页面需要抽取的内容。
选择页面抽取内容

clipboard.png

①抽取链接:需要抽取页面上的链接时,选择抽取链接以及具体的链接类型,会建立对应的链接抽取。(方式一:智能过滤/方式二:定位过滤/方式三:地址/标题过滤)
②抽取数据:需要抽取页面上的数据时,选择抽取数据,会建立对应的数据抽取。(>>如何选择表单)
例如:
需要采集新闻的正文数据,当前页面是新闻首页,汇集了新闻的链接,正文数据是通过点击新闻链接进入的,所以本页面需要抽取新闻链接。
软件预置了一些常见的链接页面场景,此时勾选链接列表,软件会自动建立一个链接抽取。

3.如何填写示例地址
(1)模板一的示例地址,自动默认为该任务的采集地址。
(2)其他模板的示例地址,自动默认为上一级模板抽取到的某个链接地址。
(3)如果默认的示例地址不符合需求,可以手动修改示例地址,方法如下:
①采集入口地址(模板一)的选择
一般选择目标网站的入口地址,比如首页。
②示例地址的选择
大多数情况下,采集地址只填写一个url地址。如果链接的页面结构和层级结构是一致的,能够套用同一套采集模板进行采集,可填写多个采集地址,中间用回车换行分隔。如果不一致,需要创建新的采集任务。
例1:采集整个淘宝网全部商品的信息,淘宝网首页就是入口地址。
例2:只采集“女装”类别的商品信息,“女装”首页就是入口地址。
例3:只采集某商品的评论信息,该商品的链接地址就是入口地址。

三,模板的高级选项

1、字符编码

默认自动识别。如果该页面未能自动识别发生乱码,需要自行选择字符编码。可以选择GBK或UTF-8。

2、 文档类型

默认自动识别。可以选择采集xml文档。

3、网页类型

适用于一个模板配置大批量网站的情况(可导入上万个采集地址),选择类型后,可以自动过滤不属于该类型的网页,从而达到快速配置的目的。
网页类型包括:全部类型、导航页、列表页、(文本)内容页、详情页、附件、未知页。

4、主题过滤

自动识别网页的语义,并采集属于某些类别的数据,过滤掉不属于某些类别的数据。(针对自动分类器使用,如有需求请联系我们定制。)

5.、未匹配处理模板

适用于一个模板配置大批量网站的情况,当有页面不符合匹配的类型被过滤掉后,可以在此选择一个针对未匹配页面的处理模板,进入其他处理流程。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/388232.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

2.PHP利用PDO连接方式连接mysql数据库

代码如下 <?php$serverName "这里填IP地址";$dbName "这里填数据库名";$userName "这里填用户名&#xff08;默认为root&#xff09;";$password "";/*密码默认不用填*/try { $conn new PDO("mysql:host$serverName;…

django 性能优化_优化Django管理员

django 性能优化Managing data from the Django administration interface should be fast and easy, especially when we have a lot of data to manage.从Django管理界面管理数据应该快速简便&#xff0c;尤其是当我们要管理大量数据时。 To improve that process and to ma…

3D场景中选取场景中的物体。

杨航最近在学Unity3D&#xfeff;&#xfeff;&#xfeff;&#xfeff;在一些经典的游戏中&#xff0c;需要玩家在一个3D场景中选取场景中的物体。例如《仙剑奇侠传》&#xff0c;选择要攻击的敌人时、为我方角色增加血量、为我方角色添加状态&#xff0c;通常我们使用鼠标来选…

xpath之string(.)方法

from lxml import etreehtml <li class"tag_1">需要的内容1<a>需要的内容2</a></li> selector etree.HTML(html ) contents selector.xpath ( //li[class "tag_1"]) contents1 selector.xpath ( //li[class "tag…

循环语句

循环语句&#xff1a; 当我们要做一些重复的操作时&#xff0c;首先想到的是有没有一种循环的语句&#xff1f; 答案当然有 Java提供了三种循环&#xff1a; for循环&#xff0c;在Java5中引入了一种主要用于数组的增强型for循环。while循环do……while循环for循环语法1&#x…

canva怎么使用_使用Canva进行数据可视化项目的4个主要好处

canva怎么使用(Notes: All opinions are my own. I am not affiliated with Canva in any way)(注意&#xff1a;所有观点均为我自己。我与Canva毫无关系) Canva is a very popular design platform that I thought I would never use to create the deliverable for a Data V…

如何利用Shader来渲染游戏中的3D角色

杨航最近在学Unity3D&#xfeff;&#xfeff; 本文主要介绍一下如何利用Shader来渲染游戏中的3D角色&#xff0c;以及如何利用Unity提供的Surface Shader来书写自定义Shader。 一、从Shader开始 1、通过Assets->Create->Shader来创建一个默认的Shader&#xff0c;并取名…

深入bind

今天来聊聊bind 关于之前的call跟apply 查看此链接 我们要明确4点内容 1. bind之后返回一个函数 let obj {name : skr } function fn(){console.log(this) } let bindfn fn.bind(obj) console.log(typeof bindfn) // function 2.bind改变this 并且可以传参 bind之后的函数仍…

Css单位

尺寸 颜色 转载于:https://www.cnblogs.com/jsunny/p/9866679.html

ai驱动数据安全治理_JupyterLab中的AI驱动的代码完成

ai驱动数据安全治理As a data scientist, you almost surely use a form of Jupyter Notebooks. Hopefully, you have moved over to the goodness of JupyterLab with its integrated sidebar, tabs, and more. When it first launched in 2018, JupyterLab was great but fel…

【Android】Retrofit 2.0 的使用

一、概述 Retrofit是Square公司开发的一个类型安全的Java和Android 的REST客户端库。来自官网的介绍&#xff1a; A type-safe HTTP client for Android and JavaRest API是一种软件设计风格&#xff0c;服务器作为资源存放地。客户端去请求GET,PUT, POST,DELETE资源。并且是无…

一个透明的shader

杨航最近在学Unity3D&#xfeff;&#xfeff;Shader "Custom/xiankuang" { Properties { _LineColor ("Line Color", Color) (1,1,1,1) _GridColor ("Grid Color", Color) (1,1,1,0) _LineWidth ("Line Width", float) 0…

Mysql常用命令(二)

对数据库的操作 增 create database db1 charset utf8; 查 # 查看当前创建的数据库 show create database db1; # 查看所有的数据库 show databases; 改 alter database db1 charset gbk; 删 drop database db1; 对表的操作 use db1; #切换文件夹select database(); #查看当前所…

python中定义数据结构_Python中的数据结构—简介

python中定义数据结构You have multiples algorithms, the steps of which require fetching the smallest value in a collection at any given point of time. Values are assigned to variables but are constantly modified, making it impossible for you to remember all…

1206封装电容在物料可靠性设计比较低

1206封装电容在物料可靠性设计中是要尽力避免的&#xff0c;尽量选择0805或1210。在现场中容易出现电容因断裂而击穿的情况。同时容易造成保险丝烧断。转载于:https://www.cnblogs.com/conglinlixian/p/10414877.html

Java开发中 Double 和 float 不能直接运算

不能直接运算 是因为计算机储存浮点类型的数值使用指数和尾数来表示 这就意味着计算时会出现“精度缺失”的现象 为了解决这个问题 我们引入 java.math.BigDecimal类来进行精确计算。 具体如下&#xff1a; public class Arith { //加法运算 public static double add(dou…

Unity3D 场景与C# Control进行结合

杨航最近在自学Unity3D&#xff0c;打算使用这个时髦、流行、强大的游戏引擎开发一个三维业务展示系统&#xff0c;不过发现游戏的UI和业务系统的UI还是有一定的差别&#xff0c;很多的用户还是比较习惯WinForm或者WPF中的UI形式&#xff0c;于是在网上搜了一下WinForm和Unity3…

数据质量提升_合作提高数据质量

数据质量提升Author Vlad Rișcuția is joined for this article by co-authors Wayne Yim and Ayyappan Balasubramanian.作者 Vlad Rișcuția 和合著者 Wayne Yim 和 Ayyappan Balasubramanian 共同撰写了这篇文章 。 为什么要数据质量&#xff1f; (Why data quality?) …

黑魔法(method-swizzling)解决第三方库引发的问题

需求 最近做一个项目中&#xff0c;有个需求&#xff0c;所有网络请求&#xff0c;都不显示 NetworkActvityIndicator&#xff08;也就是状态栏里旋转的小圈圈&#xff09;. 解决过程1&#xff1a; 全局搜索 NetworkIndicator 关键字&#xff0c; 把所有涉及 NetworkIndicator …

Python 操作 MySQL 的5种方式(转)

Python 操作 MySQL 的5种方式 不管你是做数据分析&#xff0c;还是网络爬虫&#xff0c;Web 开发、亦或是机器学习&#xff0c;你都离不开要和数据库打交道&#xff0c;而 MySQL 又是最流行的一种数据库&#xff0c;这篇文章介绍 Python 操作 MySQL 的5种方式&#xff0c;你可以…