这两天构思了一个爬虫框架,对外提供 API 创建爬虫任务,然后内部的队列会进行爬虫的消费。只需要实现数据的解析接口就能快速编写爬虫。非常适合需要利用 AI 快速生成爬虫代码的团队。
这个框架对外提供了 API 接口来创建,非常便利。目前的设计思路就是只需要实现一个 parse 接口,就行了,方便后续 AI 的介入。
目前这是一个非常简单清晰的项目,希望和感兴趣的朋友共建这个项目,提升大家的技术影响力,或许对找远程工作也是有帮助的。
![]() | 1 BingoW 1 天前 scrapy:我算什么 |
2 happytaoer OP @BingoW 比 scrapy 还轻量。大部分爬虫只需要实现 parse 方法即可得到支持 API 的爬虫系统。并且对 AI 编写爬虫特别友好。未来的开发思路是精简为主,完成核心功能,提供 AI 快速集成。 from typing import Dict, Any from ..core.base_spider import BaseSpider class DefaultSpider(BaseSpider): def parse(self, raw_content: str, url: str, headers: Dict[str, str]) -> Dict[str, Any]: return raw_content |
3 rev1si0n 1 天前 看着很理想,现实很残酷,只有基础到爆的程度的抓取才会只有一条 url ,实际业务上请求参数,请求头都需要特定计算,甚至依赖计算,完全无法处理。你这也没简单到哪里,甚至我为了调用你还得单独写个请求你这接口的,那我何必不直接请求目的接口直接 parse 呢。 |
4 rev1si0n 1 天前 和我前某东家的自研框架想法类似,但是你至少得有 request + parse 两个阶段吧。 |
5 justtokankan 1 天前 ip 被 ban 了,你怎么解决 |
![]() | 6 fkdtz 1 天前 无非是一个生产消费模型,解耦了任务和解析这两侧,说实话没啥必要,爬虫面对的核心问题并不在这里。 |
7 happytaoer OP @rev1si0n 对,目前有这个接口的实现。可以自定义 header request ,自定义 parse ,甚至于入库自定义。这个项目主要的意义其实不是用来写单个爬虫,而是成百上千个爬虫,提供对外的聚合查询服务。 |
8 happytaoer OP @justtokankan 大佬,这得爬虫里面自己连代理,框架不处理代理 |
9 happytaoer OP @fkdtz 对实际就是抽象了一个架构,对外提供 API ,对于那种成规模爬虫可以使用,如果是单独爬一个用这个没啥意义。后面的方向就是通过提供清晰的接口来提供 AI 爬虫代码的生成。 |
10 luzihang 17 小时 38 分钟前 n 年前,用过类似的内部框架。对接数字货币交易所行情,parse 各个交易所的数据结构,转成我们内部的结构。但是这种应用不能严格称为爬虫。 |
11 czl777 10 小时 56 分钟前 这么说 你这个项目废了,爬从是目前市场上唯一一个不能做成标准化的东西 |
12 happytaoer OP @czl777 内部的爬虫是自定义的。 |