一个多处理的web抓取和抓取框架。

MultiprocessingSpider的Python项目详细描述


多处理器处理器

[简体中文版]

说明

一个简单易用的网页抓取框架。在

建筑

Architecture

依赖关系

  • 请求

安装

pip install MultiprocessingSpider

基本用途

多处理spider

^{pr2}$

文件标识符

fromMultiprocessingSpider.spidersimportFileSpiderfromMultiprocessingSpider.packagesimportFilePackageclassMySpider(FileSpider):start_urls=['https://www.a.com/page1']stream=Truebuffer_size=1024overwrite=Falsedefrouter(self,url):returnself.parsedefparse(self,response):# Parsing task or new page from "response"...# Yield a file packageyieldFilePackage('https://www.a.com/file.png','file.png')...# Yield a new url or a url listyield'https://www.a.com/page2'...yield['https://www.a.com/page3','https://www.a.com/page4']if__name__=='__main__':s=MySpider()# Add a urls.add_url('https://www.a.com/page5')# Start the spiders.start()# Block current processs.join()

文件下载器

fromMultiprocessingSpider.spidersimportFileDownloaderif__name__=='__main__':d=FileDownloader()# Start the downloaderd.start()# Add a filed.add_file('https://www.a.com/file.png','file.png')# Block current processd.join()

更多示例→{a2}

许可证

GPLv3.0
这是一个免费的图书馆,欢迎任何人修改:)

发行说明

1.1.2版

重构

  • 从“FileDownloader”中删除属性“name”。在
  • 完成“M”中的“UserAgentGenerator”类ultiprocessingSpider.Utils". 在
  • 继续优化每个属性的setter方法。如果值无效,将引发异常。““睡眠时间”现在可以设置为0。在
  • 改变子进程的休眠策略,子进程在接收到任务包后将进入休眠状态,以防止多个请求同时发送。在

1.1.1版

错误修复

  • 修复“起始网址”失效。在

1.1.0版

功能

  • 为“FileSpider”添加覆盖选项。在
  • 添加路由系统。重写“router”方法后,可以在解析方法中生成单个url或url列表。在

错误修复

  • 修复重试消息显示错误。在

重构

  • 优化setter方法。现在您可以执行以下操作:蜘蛛。睡眠时间=“5”。在
  • 当“状态代码”不在200到300之间时,不会重新发送请求。在
a)多处理spider
  • 将属性“handled_url_table”重命名为“handled_url”。在
  • 删除方法“parse”,添加“example_parse_method”。在
  • “web头”中的“用户代理”现在是随机生成的。在
  • 更改url_表的解析顺序,当前规则:“FIFP”(先入先解析)。在
b)文件下载器
  • 删除“添加文件”方法。在

1.0.0版

  • 第一个版本。在

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java在Eclipse中使用ctrlshiftt而不是ctrlshiftr有什么好处?   java自动装箱概念SCJP   java如何使用JAXR和Resteasy、Angular和Wildfly10处理COR   java如何在整数数组中动态添加元素?   JAVA从继承生成器模式返回父对象继承   java问题调试生产者消费者问题   java MQ:已达到通道的最大实例数   JavaPowerMockMockito:我试图stubb的方法最终被调用   java Hibernate将多个列映射到一个表   在java中,将字符串中的单词大写,但跳过字符串中的数字和多余空格或符号   使用Eclipse将Java项目导出到JAR时出现“重复条目”错误   java使用eclipselink在实体表上指定NullConstraint   <Java>我可以在TCPIP中使用多个服务器socket吗?   带有自定义视图的java AlertDialog:调整大小以包装视图的内容   如何从用C#编写的web服务生成用于java的SOAP API?