自动识别采集内容(什么时候需要使用到万能文章采集器能采集哪些内容本采集器)
优采云 发布时间: 2021-11-13 23:28自动识别采集内容(什么时候需要使用到万能文章采集器能采集哪些内容本采集器)
通用文章采集器(采集器)
这是一个golang写的采集器,可以自动识别文章列表和文章内容。使用它采集文章不需要写正则表达式,只需要提供一个文章列表页的链接即可。
为什么这是通用的文章采集器通用的文章采集器可以采集什么内容
这个采集器可以是采集的内容有:文章标题、文章关键词、文章描述、文章详细内容,文章作者,文章发布时间,文章浏览量。
我什么时候需要使用 Universal文章采集器
当我们需要给网站采集文章时,这个采集器就可以派上用场,这个采集器不需要看管,24不间断运行数小时,每10分钟自动遍历采集列表,抓取收录文章的链接,随时抓取回文,还可以设置自动发布为自动发布到指定的文章表中。
通用文章采集器在哪里可以运行?
这个采集器可以在Windows、Mac、Linux(Centos、Ubuntu等)上运行,可以下载编译好的程序直接执行,也可以下载源码自己编译。
通用文章采集器可用伪原创
此采集器暂时不支持伪原创功能,后续会添加相应的伪原创选项。
如何安装和使用
go env -w GOPROXY=https://goproxy.cn,direct
最后执行如下命令
go mod tidy
go mod vendor
go build
编译完成后,配置config。将config.dist.json重命名为config.json,打开config.json,修改mysql部分的配置,填入你的mysql地址、用户名、密码、数据库信息,将mysql.sql导入到填好的数据库中,双击点击运行可执行文件,开启采集之旅。
添加待处理采集文章列表描述
第一个版本还没有可视化界面,需要使用数据库工具打开fe_article_source表,填写采集列表。你只需要在url字段中填写采集的列表,第一行。
Config.json 配置说明
{
"mysql": { //数据库配置
"Database": "collector",
"User": "root",
"Password": "root",
"Charset": "utf8mb4",
"Host": "127.0.0.1",
"TablePrefix": "fe_",
"Port": 3306,
"MaxIdleConnections": 1000,
"MaxOpenConnections": 100000
},
"server": { //采集器运行配置
"SiteName" : "万能采集器",
"Host" : "localhost",
"Env" : "development",
"Port" : 8088
},
"collector": { //采集规则
"ErrorTimes": 5, //列表访问错误多少次后抛弃该列表连接
"Channels": 5, //同时使用多少个通道执行
"TitleMinLength": 6, //最小标题长度,小于该长度的会自动放弃
"ContentMinLength": 200, //最小详情长度,小于该长度的会自动放弃
"TitleExclude": [ //标题不包含关键词,出现这些关键词的会自动放弃
"法律声明",
"关于我们",
"站点地图"
],
"TitleExcludePrefix": [ //标题不包含开头,以这些开头的会自动放弃
"404",
"403",
"NotFound"
],
"TitleExcludeSuffix": [ //标题不包含结尾,以这些开头的会自动放弃
"网站",
"网",
"政府",
"门户"
],
"ContentExclude": [ //内容不包含关键词,出现这些关键词的会自动放弃
"ICP备",
"政府网站标识码",
"以上版本浏览本站",
"版权声明",
"公网安备"
],
"ContentExcludeLine": [ //内容不包含关键词的行,出现这些关键词的行会自动放弃
"背景色:",
"时间:",
"作者:",
"qrcode"
]
},
"content": { //自动发布设置
"AutoPublish": true, //是否自动发布,true为自动
"TableName": "fe_new_article", //自动发布到的文章表名
"IdField": "id", //文章表的id字段名
"TitleField": "title", //文章表的标题字段名
"CreatedTimeField": "created_time", //文章表的发布时间字段名,时间戳方式
"KeywordsField": "keywords", //文章表的关键词字段名
"DescriptionField": "description", //文章表的描述字段名
"AuthorField": "author", //文章表的作者字段名
"ViewsField": "views", //文章表的浏览量字段名
"ContentTableName": "fe_new_article_data", //如果文章内容表和文章表不是同一个表,则在这里填写指定表面,如果相同,则填写相同的名称
"ContentIdField": "id", //文章内容表的id字段名
"ContentField": "content" //文章内容表或文字表的id字段名
}
}
发展计划有助于改进
欢迎有能力和有贡献精神的个人或团体参与本采集器的开发和完善,共同完善采集的功能。请fork一个分支,然后修改,修改后提交pull request合并请求。