coder-hxl/x-crawl

Flexible Node.js AI-assisted crawler library

解决的问题

传统网页爬虫在网站更新其HTML结构或类名时经常失效,因为它们依赖于固定的选择器来查找数据。x-crawl通过集成AI来理解页面的语义含义,使其即使在底层代码发生变化时也能准确提取信息。

工作原理

该库结合了标准的Node.js爬虫与AI集成(通过OpenAI和Ollama)。它可以爬取静态和动态页面,处理界面数据,并下载文件。当使用AI时,开发者可以将HTML内容与自然语言指令(例如:"获取图片链接并去除重复项")一起传递给AI,以解析并提取特定元素,而无需硬编码CSS选择器。

适用人群

需要能够适应网站变化的稳健网页抓取工具的开发者,以及希望使用LLM自动化复杂浏览器交互和数据提取的开发者。

主要亮点

  • AI驱动解析:使用LLM解析语义信息,减少手动更新选择器的需求。
  • 动态页面支持:支持在动态页面上进行自动操作、键盘输入和事件处理。
  • uma指纹识别:包含设备指纹功能,以避免被检测和追踪。
  • 高级爬取控制:支持代理轮换、优先级队列、可自定义重试逻辑,以及灵活的间隔时间(固定或随机)。
  • TypeScript支持:完全使用泛型实现,提供强类型支持。

相关

  • 项目
  • 项目
  • 项目
  • 项目
  • 项目