(仿)火车头采集器 源码开源

菜鸟作品,不喜勿喷

前两年自己花了很久想仿制一款火车头采集器

然后也付出了很多努力,最终未能修成正果

代码一直在电脑中吃灰,本着无私奉献的精神

免费开源,给有需要的人参考和完善

软件功能大部分都已实现

  • 任务新建和编辑
  • 网址采集
  • 标签编辑
  • 数据采集
  • 数据发布
  • 发布配置的修改,编辑和测试
  • 发布模块的修改和编辑

 

 

先上一些效果图

运行效果

主窗口

 

 

任务窗口

 

 

 

采集内容

 

 

 

网址采集

 

 

 

发布选择

 

 

多级网址采集

 

浏览器获取信息

 

标签编辑(这个部分耗时比较久)

 

 

 

接下来是发布部分

 

发布配置

 

 

 

发布模块

 

发布测试

 

 

 

开发日志(当时手机记录的,比较长,可跳过,下载地址在最后)

5.23
[窗口]主界面布局
[窗口]信息提示窗口
 
 
5.24
[窗口]任务分组列表
[新增]任务列表实现保存和读取
[优化]主界面窗口尺寸自适应完善
 
 
5.25
[新增]分组增加,删除以及修改功能实现,已xml文本形式保存文件
 
5.26
[优化]分组增删改重写,改用sqlite3
 
 
5.27
 [窗口]采集任务第一步布局
[窗口]动态提醒帮助窗口
[控件]PicMenu——菜单选择改变文本框
[窗口]网址添加(半成品)
 
5.28
 [控件]高亮显示编辑框
[控件]lable——选项修改代码框
[窗口]添加采集地址添加窗口布局完成
[新增]网址添加部分各个规则生成预览完成
 
5.29
 [优化]重新优化代码高亮编辑框,更多属性和配置,更多展现组合方式
[新增]任务编辑基本信息读取(标题,备注等)
[窗口]多页管理窗口布局完成
[新增]多页管理网址替换和源码中提取
 
5.30
[新增]GAC浏览器支持Xpath,可视化选取采集元素,支持多选和单选,网址自动纠正
 
5.31
[窗口]添加任务第一步全部布局完成(尺寸自适应)
[新增]通过xpath获取网址
[优化]代码高亮,支持post随机值和分页
[代码]新增获取规则网址列表(待测试)
 
6.1
[窗口]第一步读取配置信息完成
[新增]多级网址规则增删改
[新增]POST参数增删改
[新增]自动获取网址链接
[新增]手动获取网址链接
[新增]GET和POST方式获取链接6.2[新增]多级网址支持标签
[新增]支持附加参数
[新增]列表分页获取
[核心]获取网址列表(一级网址)
 
6.3
[新增]获取网址列表支持Xpath
[新增]测试地址采集结果,实时状态
[新增]测试结果的导出,复制,浏览
[新增]获取网址列表支持多级
[新增]检测重复网址
[新增]多级网址只测试第一级
[新增]网址列表结果支持标签
[优化]浏览器获取cookies自动跳转第一个网址
 
6.4-6.9暂停开发六天
 
6.10
[优化]网址采集支持多级标签
[布局]新建任务第三步布局完成
 
6.12
-16[辅助]xml生成实体类工具开发
 
6.17
暂停一天
 
6.18
[窗口]多页管理实现
 
6.19
[窗口]标签编辑基本布局
 
6.20
[新增]标签处理列表读取
 
6.21-6.22
[优化]部分标签处理编辑
 
6.24
[优化]除ocr外所有标签读取编辑保存
[优化]固定格式读取,测试 
后面懒得写了
😂 分页采集 拼音处理 翻译 开发细节 多页名称禁用 分页\d
 
 
2018-07-06
[修复]支持多页保存
[新增]支持新增标签
[优化]新建任务自带标签
[优化]制作启动欢迎页,改用本地文件,避免突然失效
[优化]添加多级网址采集部分的标签存在检测和标签不存在检测
 
2018-07-07
[修复]规则没有默认值引起的错误
[修复]批量多页导入没有解码
[新增]起始网址支持编辑
 
2018-07-08
[优化]保存任务时的各种参数赋值
[修复]编辑任务时多级网址不存在而引发的错误
 
2018-07-09
[新增]支持任务新增和保存
[修复]修复添加标签处理时覆盖旧的处理
[优化]保存最近测试的网址
 
2018-07-12
[优化]任务编辑界面循环匹配换行功能
[修复]标签不存在引起的错误
[修复]多次保存任务导致的重复编码问题
[修复]单条起始网址无法编辑的问题
[修复]没有多级网址无法获取网址列表的问题
 
2018-07-15
[新增]循环标签添加为新记录,循环不足第一条记录补齐
[优化]标签编辑中保存文件名,保存目录和系统时间高亮显示
[修复]循环获取和非循环获取同时存在时的逻辑
 
2018-07-16
[优化]将标签测试代码移植到类中,方便后期调用
[新增]标签下载的各项功能实现
 
2018-07-17
[新增]下载部分布局
[优化]重写http请求全部代码,实现代理功能
[优化]增加默认页重试
 
2018-07-18
[新增]增加标签保留字段,禁止用户使用
[优化]重写网址爬取,实现类中爬取网址
[新增]实现列表标签
[新增]实现标签排序
[新增]支持开始任务,结束任务
[新增]支持任务抓取网址
[优化]禁止关闭欢迎窗口
[优化]采集网址进度展示
[优化]开启任务或结束任务时判断是否已存在
 
2018-07-19至21
[新增]实现数据库转换功能
[优化]支持access,sqlite,mysql,sqlserver
 
2018-07-25
[新增]实现采集网址,统计网址数量
[新增]实现采集待采集单条内容,录入更新至数据库
[修复]保存任务,任务状态丢失
[修复]标签自动获取内容选项具体配置丢失
[优化]提升控件速度
[修复]多次开始并停止内容时注册多次事件
[优化]每次开始任务时重新读取配置
 
2018-07-26
[修复]固定标签内容为空
[新增]标签结果检测
[新增]内容多线程采集
 
2018-07-27
[优化]实现标签的内容过滤(标签不得为空,包含,不得包含,重复检测,长度判断等)
[优化]实现一个网址多条结果的采集并录入数据库
[新增]实现采集完成后提示
 
2018-10-06
[修复]网址自定义规则存在多个标签时的错误
[优化]保存存在错误时,自动跳转对应界面
[修复]匹配时可能会有多种换行符的问题
[修复]采集网址时支持填写多个标签
[修复]采集网址时自动增减标签 
[新增]增加标签名导出功能
 
2018-10-09
[新增]支持文件发布
[优化]过滤保存文件时路径或文件名包含特殊字符
[优化]实现发布时进度条
[新增]支持设置发布状态,发布成功自动标注(支持全部成功才标记)
[新增]支持全部标记为已发和未发
 
2018-10-24
[新增]新增数据发布配置界面布局
 
2018-11-26
[新增]发布模块配置界面
[新增]支持加载发布模块
[新增]新增点选菜单控件
[优化]代码框支持插入标签
 
2018-11-27
[优化]支持新增和修改发布模块
[优化]支持带有密码的火车头模块和GAC模块
[优化]发布配置支持读取模块列表,支持点击编辑模块
 
2018-11-29
[优化]发布配置管理支持读取数据库中的配置
[优化]可以通过微型浏览器获取cookies
[优化]发布配置可以修改和保存
[优化]重写发布配置方面XML操作方式
[优化]重写发布模块的XML读写方式
 
2018-11-30
[优化]支持编辑和删除发布配置信息
[新增]webpost可测试发布
[新增]支持测试发布模块和配置
[优化]测试标签自动保存,方便下次测试
[优化]登陆后的cookies进行保存
[优化]发布模块支持导入,导出,删除
至此,发布模块编辑,发布配置全部完毕
 
2018-12-01
[新增]规则编辑支持导入发布模块中的标签
[新增]规则编辑支持添加发布配置,删除,修改配置
 
2018-12-03
[新增]支持测试页面测试web发布
[优化]修改web发布,迎合通用发布接口,使其可以实现正常发布内容
[修复]列表标签编辑后成为标签的bug
[优化]优化必须包含和不得包含返回结果,迎合测试日志
 
2018-12-21
[优化]修改采集规则和标签规则迎合插件
[优化]修改下载列表迎合插件
[优化]修改采集迎合插件
 
2018-12-24
[优化]迎合插件合并网址采集和内容采集
[修复]采集网址列表时,范围不支持(*)的bug
[优化]迎合插件重写采集网址部分
 
2019-01-07
[修复]多个多级网址,会让列表标签消失
[修复]无法取消插件选择的情况
[优化]迎合插件网址获取结果改为List<KeyValuePair<string, Dictionary<string, string>>>
[修复]采集网址时,不是最后一层也入库的情况
[修复]未勾选采内容依旧采集内容的情况
[修复]列表标签多级继承

 

最后的最后,代码下载地址

链接: https://pan.baidu.com/s/1oyzO-Cnc_YS23svI9QiFYg 提取码: nu4n 

代码未完全完成,测试时发现的bug均已全部修复

由于代码未进行大量测试,可能还存在过多问题,望见解

新手开发,仅供参考

 

posted @ 2019-09-09 15:24  野生程序员  阅读(3661)  评论(11编辑  收藏  举报