ARTICLE DETAIL

资讯详情

深耕网站建设与运营推广的一线实战洞察。

比BeautifulSoup 快 784 倍的Python爬虫框架Scrapling

比BeautifulSoup 快 784 倍的Python爬虫框架Scrapling

2024年的10月之际, 有一款被称作 的 爬虫框架, 其于 上面进行了开源。直至如今, Star的数量已经超过了48k, Fork的数量也超过了45k, 经过换算可知, 平均每一天所增长的Star数量达到了75个。

想要去做的那些事情, 是十分 的, 也就是 HTTP 请求、HTML 解析事, 还有反反爬之事、浏览器自动化一事以及爬虫框架之事, 以往从前得需要将五个或者六个库拼凑合拢起来才能够达成的劳作, 现如今只要借助一个库便能够成功搞定了。

自适应元素定位

传统爬虫最大的维护成本之处在于选择器, 网站一旦进行改版, CSS选择器或者XPath便有可能全部失效。其做法如下: 在首次抓取之际开启 =True, 解析器将元素的多维特征, 也就是标签名、文本内容、属性、DOM路径、父节点以及兄弟节点关系, 存储到本地。当网站改版之后, 开启 =True, 系统借助相似度算法再次匹配被移动或者重命名的元素。简而言之, 就是从“依据规则查找元素”转变为“按照特征找寻相似元素”。

四种,按需选

提供了四种 ,对应不同的抓取场景:

当中, 具备环绕的能力, 对于众多从事数据采集工作的开发者而言, 是必备的需求, 无需再自行费力去折腾, 或者进行一些技术手段去破解了。

MCP :给 AI 用的爬虫接口

在2025年时会加入的MCP(Model)服务器, 是最近这段时间里比较受到人们关注的一个特性。

它能够接入诸如 、 等之类的 AI 工具, 其工作形式是, 首先运用 提取页面当中的目标内容之举, 接着将经过精简处理的数据传递给大模型, 以此来降低 Token 的消耗情况。爬虫于这个架构里所扮演的角色, 从“数据获取工具”转变成为了“AI 数据入口层”。

解析速度

解析引擎是基于lxml构建的, 官方所做的基准测试, 也就是针对5000个嵌套元素提取, 进行100多轮并取平均值后的相关数据如下:

所以, “比……快784倍”这种说法, 是有测试数据来支撑的, 但是, 要讲明白的是: ……的解析速度优势, 主要源自lxml底层, 跟同样基于lxml的……处于同一量级, 在解析算法层面, 并没有根本性的差异。在自适应查找方面……耗时2.39ms, 对比……的12.45ms, 快了大约5倍。

和传统方案比

相比之下, 它多了请求能力、反爬绕过以及自适应定位;与另一个相比, 其 API 语法高度兼容, 不过额外内置了反爬和 MCP 集成;再和第三个相比, 同样基于某事物, 却多了隐身补丁以及更简洁的接口。

并非企图去将哪一个单独的工具予以替代, 而是要把多个工具所具备的能力容纳进一个框架之中, 借此削减开发者于不同库之间转换时所产生的成本。

上个手

要求 3.10+。

基础安装 pip 只有解析引擎;

需要 和浏览器就装 pip "" 再跑 ;

全功能用 pip ""。

也有 镜像: pull /。

该项目当下的开发呈现出极为活跃的态势, 其累计提交的数量已然超过了1400次, 测试覆盖率达到了92%, 并且设置并且提供了完整的Type Hints注。

据官方数据,已有数百名爬虫工程师日常使用超过一年。

能够适用的场景有, 长期持续运行的数据采集, 存在要绕开反爬措施的站点, 因网站频繁进行改版致使选择器维护成本高昂的项目, 还有需要借助AI辅助来提取的工作流。要是仅仅是临时抓取一两个固定页面, 那它依旧是足够使用的, 没有必要为了简单的需求而去引入一个全栈框架。

返回列表