-
-
Notifications
You must be signed in to change notification settings - Fork 5.3k
Description
以下功能会在有空的时候集中开发,大家有什么想要的功能也可以提issues留言,也欢迎大家fork之后帮我开发并提交pull request~
- 把项目协议改成Apache或者MIT协议,供所有个人和公司免费使用和二次开发,取消商用授权,仅需保留原始版权声明(写一个版权信息声明)。
这部分是长期开发计划:
-
设计阶段通过outside:code.js来加载JS代码,并暴露交互接口方便和设计阶段的程序交互。
-
接入cms。
-
m3u8下载。
-
智能检测主要内容块并标记选中,思路:先滚动直到到达5次没有新内容加载,然后根据网页中的html内容,检测最大的块(子元素结构一致且数量最多的块)作为主要块,并自动选中子元素。
另一种思路:将整个网页每个节点的具体内容替换成长度的数字,然后分析这个树,根据字数长短寻找最佳块。占比面积最大的块是什么,标记清楚(硕士论文最早的一章)。 -
引入大语言模型,用于分析页面主要内容及识别验证码等,如将图片类验证码转换为文字后,用大语言模型/多模态模型过验证码。
-
构建Docker镜像和Web前端页面,可以远程访问,调用和执行服务器的爬虫任务;通过http调用的方式直接执行任务。
-
Oracle/Sql Server/MongoDB/Postgre数据库入库功能。
-
iframe层数设置。
-
循环和提取数据可以不止选择第一个元素。
-
底层框架可以考虑换playwright。
-
操纵扩展页面。
-
手机APP采集支持。
-
插件版本的EasySpider处理CloudFlare等极端网站。
-
无头模式下截图默认是整个页面截图。
-
任务列表的URL改成links的第一条而不是固定的URL字段。
-
[x ] 动态调试时找不到元素会自动回到寻找前的页面而不是第一第二个页面反复横跳。
-
插件测试,saveData()之前过一个全局插件用来处理数据为其他指定格式,如导入翻译插件(新导包的路径依赖怎么做),试一下是否可以将self.替换成其他的如browser.就可以完成指定任务。
-
数据写入模式中增加文件已存在自动重命名,下载文件同名情况下重命名(多线程测试,keyboard参数测试,采集速度测试,两个相同任务ID同时下载文件测试)。
-
cookies池功能。
-
自定义操作新增“切换标签页”,“关闭当前标签页”,“最大化窗口”的操作,循环文本列表同样需要处理标签页。
-
判断条件增加多个值,与或都行。
-
操作台增加OCR识别图片选项。
-
下载的图片名称可自定义,用于后续读取图片方便验证码识别等。
-
出一期设计阶段不用自带浏览器设计的教程(不能自动点击和输入文字)。
-
文心一言测试。
-
PDF生成。
-
文章生成doc,图片插入到文字中保持顺序不变。
-
操作备注。
-
循环的XPath也可以使用上层循环做拼接。
-
可选是否加载图片和视频以提高效率。
-
mysql数据去重bug:1054, unknown column '_id' in 'field list'.
-
Shadow-root处理。
-
下载文件是否自动重命名选项。
-
动态调试//text()[1]可以爬到但是动态调试匹配不到
-
(在不可优化的情况下,如设置了换行的需求)当一个XPath可以匹配到多个元素时,改变逻辑从只提取第一个匹配到的元素到提取所有匹配到的元素并合并文本。
356.json -
Docker模式下带用户信息模式的Bug修复。
-
用getHTML()来解决shadowroot提取的问题。