这两天构思了一个爬虫框架,对外提供 API 创建爬虫任务,然后内部的队列会进行爬虫的消费。只需要实现数据的解析接口就能快速编写爬虫。非常适合需要利用 AI 快速生成爬虫代码的团队。
这个框架对外提供了 API 接口来创建,非常便利。目前的设计思路就是只需要实现一个 parse 接口,就行了,方便后续 AI 的介入。
目前这是一个非常简单清晰的项目,希望和感兴趣的朋友共建这个项目,提升大家的技术影响力,或许对找远程工作也是有帮助的。
![]() |
1
BingoW 17 小时 44 分钟前
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 15 小时 44 分钟前
看着很理想,现实很残酷,只有基础到爆的程度的抓取才会只有一条 url ,实际业务上请求参数,请求头都需要特定计算,甚至依赖计算,完全无法处理。你这也没简单到哪里,甚至我为了调用你还得单独写个请求你这接口的,那我何必不直接请求目的接口直接 parse 呢。
|
4
rev1si0n 15 小时 42 分钟前
和我前某东家的自研框架想法类似,但是你至少得有 request + parse 两个阶段吧。
|
5
justtokankan 15 小时 26 分钟前
ip 被 ban 了,你怎么解决
|
![]() |
6
fkdtz 15 小时 11 分钟前
无非是一个生产消费模型,解耦了任务和解析这两侧,说实话没啥必要,爬虫面对的核心问题并不在这里。
|
7
happytaoer OP @rev1si0n 对,目前有这个接口的实现。可以自定义 header request ,自定义 parse ,甚至于入库自定义。这个项目主要的意义其实不是用来写单个爬虫,而是成百上千个爬虫,提供对外的聚合查询服务。
|
8
happytaoer OP @justtokankan 大佬,这得爬虫里面自己连代理,框架不处理代理
|
9
happytaoer OP @fkdtz 对实际就是抽象了一个架构,对外提供 API ,对于那种成规模爬虫可以使用,如果是单独爬一个用这个没啥意义。后面的方向就是通过提供清晰的接口来提供 AI 爬虫代码的生成。
|