(爬虫框架)(爬虫框架编程)

点击头像看历史

xcrawler 是最开始构建的一个轻量级的爬虫框架

既然有了像 Scrapy 这样好的爬虫框架,那为何还要造轮子呢?

嗯是将 Python 知识综合起来

xcrawler

https://github.com/ChrisLeeGit/xcrawler

Scrapy

https://github.com/scrapy

Features

简单、易用

易于定制的 Spider

多线程实现并发下载

xcrawler 介绍

项目的结构

(爬虫框架)(爬虫框架编程)

框架

Crawler engine (生产者+消费者模型)

(爬虫框架)(爬虫框架编程)

配置介绍

(爬虫框架)(爬虫框架编程)

(爬虫框架)(爬虫框架编程)

Spider 基类关键方法介绍

  1. 1spider_started:该方法会在引擎启动时被触发调用,你可以通过继承该方法进行一些初始化工作,比如配置 pipeline 输出文件或者数据库连接等等;

  2. 2spider_idle:该方法会在引擎处理空闲状态(即没有任何 requests 在队列)时被触发调用,你可以通过继承该方法给引擎添加新的请求等(使用 3self.crawler.crawl(new_request, spider=self) 即可);

  3. spider_stopped:该方法会在引擎关闭时触发调用,你可以通过继承该方法并在 Spider 结束工作前做一些清理工作,如关闭文件管道、关闭数据库连接等;

  4. 4start_requests:该方法会为引擎提该 Spider 的对应种子请求;

  5. 5make_requests_from_url:该方法会为你的 URL 创建一个 Request 对象;

  6. 6parse:该方法为请求的默认解析函数回调,当然你可以可以在创建 Request 时指定其它的回调函数;

  7. 7process_request:每当引擎处理一个 Spider 对应的请求时,该方法会被触发调用,你可以通过继承该方法对 request 做些设置,比如更换随机的 User-Agent,替换 Cookies 或者代理等;当然,你可以将 request 设置为 None 从而忽略该请求;

  8. 8proccess_response:每当引擎处理一个 Spider 对应的响应时,该方法会被触发调用;

  9. 9process_item:每当引擎处理一个 Spider 对应的 item 时,该方法会被触发调用,你可以通过继承该方法将抓取并解析到的 item 存储到数据库或者本地文件中。

(爬虫框架)(爬虫框架编程)

安装

  1. 在xcrawler (https://github.com/chrisleegit/xcrawler) 下载源码

    请保证你的安装环境为 Python 3.4+

  2. 请使用 pip3 setup.py install 安装即可。

学习过程中遇到什么问题或者想获取学习资源的话,欢迎加入学习交流群

626062078,我们一起学Python!

示例



(爬虫框架)(爬虫框架编程)

(爬虫框架)(爬虫框架编程)

(爬虫框架)(爬虫框架编程)

(爬虫框架)(爬虫框架编程)

(爬虫框架)(爬虫框架编程)

(爬虫框架)(爬虫框架编程)

声明:我要去上班所有作品(图文、音视频)均由用户自行上传分享,仅供网友学习交流,版权归原作者众趣平面设计所有,原文出处。若您的权利被侵害,请联系删除。

本文标题:(爬虫框架)(爬虫框架编程)
本文链接:https://www.51qsb.cn/article/m8mad.html

(0)
打赏微信扫一扫微信扫一扫QQ扫一扫QQ扫一扫
上一篇2023-01-14
下一篇2023-01-14

你可能还想知道

发表回复

登录后才能评论