java 采集 cms_开源 java CMS - FreeCMS2.3 Web页面信息采集

Web页面信息采集

从FreeCMS 2.1开始支持

通过简单配置即可抓取目标网页信息,支持增量式采集、关键字替换、定时采集,同一采集规则可采集多个页面(静态和动态),可采集多种信息属性,可自动审核且静态化信息页面。

采集规则管理

从左侧管理菜单点击采集规则进入。

8e5397e4deeb775079c3c3e2ee8450fc.png

添加采集规则

在采集规则列表下方点击"添加"按钮。

3a54b019f672ed76202258ea0373950a.png

81ea999830f64c6b72c5a4b53354b4db.png

47f9a18bfff316a8d9a574d0975a662e.png

a0ed85f061b25792cd683951a4e15690.png

dfc164e835256316cf9c71c268e270d2.png

3ca0e1ac7a51971c7800ca8c2d45452c.png

64a2d4bd49f1a2b42e6effd1c017153d.png

填写相关属性后点击"保存"按钮即可。

采集规则属性说明

采集规则属性分为基本、设置、采集地址,采集属性,关键词替换。

一般情况下只要在基本选项卡填写相关属性即可完成。如果需要更多高级设置可以使用后面几个选项卡。

下面针对主要属性进行解释说明。

名称:采集规则的名称。

采集到栏目:采集的信息要添加到那个栏目。

页面编码:目标网页的页面编码,默认为UTF-8。

采集地址:目标网页的地址。在基本选项卡中只能设置一个,想要设置多个可以在采集地址选项卡中设置。

采集调度:设置定时执行采集操作,这个设置非常重要,只有设置了采集调度系统才执行采集操作。

内容列表开始结束html:因为系统是通过对目标网页内容进行关键词截取来提取信息属性的,所以设置目标属性的开始结束html就很重要,一定要设置为相对比较唯一的开始结束html,这样系统才能正确的截取到目标属性。此属性主要为了截取目标页面信息列表的html.

内容地址开始结束html:根据上面的属性获取内容列表html后,使用此属性截取各个内容地址。

内容标题开始结束html:根据上面的属性获取内容地址后,系统会抓取此内容地址的网页内容,然后根据此属性截取内容标题。内容相关属性的设置跟此属性类似,下面不再赘述。

状态:启用状态下的采集规则,系统才会执行。

采集图片:将信息内容中的图片下载到本地。

自动审核通过:将采集的信息直接设置为已审核状态。

使用采集信息点击量:默认采集到的信息的点击量为0,设置此属性和内容点击量开始结束html后系统会截取目标信息的点击量,设置为采集后信息的点击量。

最多采集内容数:默认不限制,如果设置了此属性,系统会从采集记录中统计此采集规则已采集了多少条信息,如果超过最多采集内容数,系统将不再采集。

将首幅图片设为标题图片:如果信息内容中有图片,则提取第一张做为标题图片,并设置信息为图片信息。

清除内容中的html标签:将信息内容中的html标签清除,保留纯文本。

当内容为空时是否采集:可设置在内容为空时不采集此信息。

使用采集信息的添加时间:默认采集到的信息的添加时间为当前时间,设置此属性和内容添加时间开始结束html后系统会截取目标信息的添加时间,设置为采集后信息的添加时间。

采集信息添加时间格式:默认格式为yyyy-MM-dd,如果目标页面的添加时间格式不同,需要在这里设置为正确的日期格式。

采集开始时间:默认为当前时间,如果不到采集开始时间,系统是不会采集的。

采集结束时间:默认为永不结束,如果超过采集结束时间,系统是不会采集的。

内容地址补全url:因为有些网页使用的是相对路径或绝对路径,可以设置内容地址的前缀。

图片地址补全url:因为有些网页使用的是相对路径或绝对路径,可以设置图片链接地址的前缀。

内容中A标签链接地址补全url:因为有些网页使用的是相对路径或绝对路径,可以设置内容中A标签链接地址的前缀。

采集地址分为静态和动态地址,静态地址为固定的地址,动态地址一般指可以分页的地址,通过{page}来代表分页变量,可以设置从那一页采集到那一页,如http://www.freetam.cn/list_{page}.html,设置开始页数为1,结束页数为10,系统会自动提取http://www.freetam.cn/list_1.html到http://www.freetam.cn/list_10.html所有页面的数据。

一般情况下我们只采集信息的标题和内容就可以了,系统还提供采集内容描述、点击量、作者、来源、添加时间属性的功能。

通过关键词替换功能,您可以将采集到的信息里面的关键词替换为自己想要的关键词。

编辑采集规则

选择需要编辑的采集规则,然后点击"编辑"按钮。

注意:同时只能编辑一个采集规则。

35923ad57bc6f704134bb85bc60c8c3f.png

填写相关属性后点击"保存"按钮即可。

采集

选择需要采集的采集规则,然后点击"采集"按钮。

注意:同时只能对一个采集规则进行采集操作。

e6532ef9ad4619f1ab2c2b93d92354af.png

ac8f25cf39738aaa51d37d6558e20b0d.png

删除采集规则

选择需要删除的采集规则,然后点击"删除"按钮。

提示:同时可以删除多个采集规则。

87d0993e4c7b2c2eaf6ae45fb3e7e230.png

031cd54d87a337eb9f9560b4cfcb72b8.png

为了防止误操作,系统会提示用户是否删除,点击"确定"完成删除操作。

查看采集记录

从左侧管理菜单点击采集记录进入。

3a897a059a4db1a88aef74d5991dd1a5.png在这里可以查看到所有web页面采集记录,您可以删除指定的采集记录,但并不会删除已采集的信息数据,选择需要删除的采集记录,然后点击"删除"按钮。

提示:同时可以删除多个采集记录。

664fa5cc205dffd49640cbfb397ba305.png

33c6f6417773db018e9d4252154e1823.png

为了防止误操作,系统会提示用户是否删除,点击"确定"完成删除操作。

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

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

相关文章

Python中reshape函数参数-1的意思?

import numpy as np c np.array([[1,2,3],[4,5,6]]) print(2行3列) print(c.reshape(2,3)) print(3行2列) print(c.reshape(3,2)) print(我也不知道几行,反正是一列) print(c.reshape(-1,1)) print(我也不知道几列,反正是一行) print(c.reshape(1,-1)) …

java浮点数四舍五入_Java小程序练习--浮点数的四舍五入

今天学习到了关于浮点数的知识,而后便编写了一个小demo,实现浮点数的四舍五入,保留两位小数。具体实现思路如下:1.获取用户输入的数字,将其保存到double型变量中;2.因为要保存到小数点后的两位,将该数乘以1…

STL9-vector容器

vector容器 动态数组 可变数组 vector容器 单口容器 vector实现动态增长: 当插入新元素时,如果空间不足,那么vector会重新申请更大内存空间(默认二倍),将原空间数据拷贝到新空间,释放旧空…

函数返回值失效

#include<stdio.h> #include<stdlib.h> #include<string.h> #if 1 char* getMen2() {char buf[64]; //临时变量&#xff0c;栈区存放strcpy(buf, "abccddeeff");printf("buf:%s\n", buf);return buf; //此处并不是把内存块64个字节ret…

mysql突然出现慢sql_Mysql开启慢SQL并分析原因

第一步.开启mysql慢查询方式一:修改配置文件Windows&#xff1a;Windows 的配置文件为 my.ini&#xff0c;一般在 MySQL 的安装目录下或者 c:\Windows 下。Linux&#xff1a;Linux 的配置文件为 my.cnf &#xff0c;一般在 /etc 下在 my.ini 增加几行:[mysqlld]long_query_time…

STL10-deque容器

deque 双端队列 deque 删除操作 deque案例&#xff1a; #if 1 #include<iostream> #include<deque> using namespace std; void PrintDeque(deque<int>& d) {for (deque<int>::iterator it d.begin(); it ! d.end(); it) {cout << *it <…

php mysql 平均分_平均评级计算mysql php

我想计算每个用户的平均评分 .我有三张 table .表评级id |order_id |rate------------------1 | 52 |82 | 51 |43 | 52 |24 | 51 |7表顺序这里做的是驱动程序表IDid |did------------------52 | 551 | 735 | 644 | 8表驱动程序id |name------------------5 | test17 | test28 |…

Leedcode4-sort listnode 归并排序

#include<iostream> using namespace std;//Sort a linked list in O(n log n) time using constant space complexity.//Definition for singly-linked list. //归并排序 #if 0 struct ListNode {int val;ListNode *next;ListNode(int x) : val(x), next(NULL) {}}; str…

vue 字典配置_vue遍历数据及字典的方法

数组&#xff1a;数值{{ item.message }}数组&#xff1a;数值加索引{{ item.msg }}{{index}}字典&#xff1a;key value index{{ value }} {{key}} {{index}}new Vue({el: #repeat,data: {object: {FirstName: John,LastName: Doe,Age: 30}}})vue遍历数组和对象的方法以及他们…

tensorflow代码中tf.app.run()什么意思

# 前面的代码省略了... 。。。 。。。 。。。 def main(argvNone):mnist input_data.read_data_sets("F:\mydata\TensorFlowData\MNIST_data", one_hotTrue)train(mnist)if __name__ __main__:tf.app.run()那么 tf.app.run()什么意思呢 &#xff1f;可以猜到&#…

java jdbc dao_Java自学-JDBC DAO

基于JDBC设计DAO的实例DAODataAccess Object数据访问对象实际上就是运用了ORM中的思路&#xff0c;把数据库相关的操作都封装在这个类里面&#xff0c;其他地方看不到JDBC的代码步骤 1 : DAO接口package jdbc;import java.util.List;import charactor.Hero;public interface DA…

java 井字棋 人机_一个井字棋tictactoe游戏的java实现 | Soo Smart!

这是一个井字棋游戏的java实现。摘录于stackoverflow。游戏规则很简单&#xff0c;只要一方棋子在水平线&#xff0c;垂直线或者对角线任意一条线上排列成功即为获胜。作者原先的代码存在着一些问题&#xff1a;代码如下&#xff1a;一共有几个类: play, player, human, comput…

C++随机数(rand和srand)函数用法详解

C 提供了一组函数以生成和使用随机数字。随机数字就是从一组可能的值中进行随机选择而获得的一个值。该组中的值都有相同的被选中的几率。 随机数字常用于许多不同类型的程序中&#xff0c;以下是一些示例&#xff1a; 计算机游戏通常要使用随机数字来模拟一些随机过程&#x…

STL11-stack容器

#if 1 #include<iostream> #include<stack> using namespace std;void test01() {//初始化stack<int> s1;stack<int> s2(s1);//stack操作s1.push(10);s1.push(20);s1.push(30);s1.push(40);cout << "栈顶元素&#xff1a;" << e…

java犀牛是什么意思_深入浅出Rhino:Java与JS互操作

2011年10月6日&#xff0c;一年一度的JavaOne大会隆重举行。JavaOne2011大会的主题之一介绍针对不同Java平台的产品路线图&#xff0c;这其中包括移动版(ME&#xff0c;Micro Edition)、标准版(SE&#xff0c;Standard Edition)以及企业版(EE&#xff0c;Enterprise Edition)。…

STL12-queue容器

queue容器 队列容器 先进先出 队列只能在一端插入 一端删除 队列不能遍历 不提供迭代器 不支持随机访问 #if 1 #include<iostream> #include<queue> using namespace std; void test01() {queue<int> q; //创建队列queue<int> q2(q);q.push(10);q.pu…

java读取csv合适文件_解析-您可以推荐一个Java库来读取(并可能写入)CSV文件吗?...

Super CSV是读取/解析&#xff0c;验证和映射CSV文件到POJO的绝佳选择&#xff01;我们(Super CSV团队)刚刚发布了一个新版本(您可以从SourceForge或Maven下载它)。读取CSV文件以下示例使用read()(我们刚刚发布的新阅读器&#xff0c;使用Dozer进行具有深度映射和基于索引的映射…

Leedcode6-binary-tree-preorder-traversal

#include<iostream> #include<vector> #include<stack> using namespace std; // Definition for binary tree 先序遍历 根左右 struct TreeNode {int val;TreeNode *left;TreeNode *right;TreeNode(int x) : val(x), left(NULL), right(NULL) {} }; #if 0 c…

java 对list增删_List 中正确的增删操作

这个为什么要单独说的原因是&#xff0c;在开发中的对数据库中的增删为最基本的&#xff0c;但是是不是写对了就尤为重要先来看代码:1 public voidtestLoopInList(){2 List a new ArrayList();3 a.add("1");4 a.add("2");5 a.add("w");6 for(St…

Leedcode7-binary-tree-postorder-traversal

#include<iostream> #include<vector> #include<stack> using namespace std; // Definition for binary tree 先序遍历 根左右 struct TreeNode {int val;TreeNode *left;TreeNode *right;TreeNode(int x) : val(x), left(NULL), right(NULL) {} }; #if 0 c…