TurboWay / spiderman

基于 scrapy-redis 的通用分布式爬虫框架
MIT License
591 stars 128 forks source link

爬虫命令到request之间的时间如何缩短? #8

Closed xkungfu closed 3 years ago

xkungfu commented 3 years ago

我在spiderman外层套了一个对外的api接口,接收到请求后,执行采集,然后返回采集结果。 测试过程中发现从接到请求到返回结果之间的时间过长。预期时长500毫秒内。目前测试发现可能延长到了5秒左右,不知道是什么原因造成的。

爬虫命令的位置: [SP_JOBS>>job.py>>SPJob>>run] p = subprocess.Popen(cmd, shell=True)

Request的位置: [SP>>spiders>>SPRedisSpider.py>>SPRedisSpider>>make_request_from_data] return Request(**params)

执行采集过程中发现从启动爬虫命令到request之间的时间花费大约2-4秒。请问这个时间是否可压缩?

TurboWay commented 3 years ago

执行爬虫启动命令时(scrapy crawl spider ),会遍历SP/ spiders 文件夹下的所有文件,所以尝试优化该路径下的文件,应该对你有所帮助。

xkungfu commented 3 years ago

好的谢谢。明白了。可能是加载各种的模块耗费了大量的时间。