如何加快爬虫(爬取Github API的速度)

本文介绍了在爬取Github API数据时遇到的问题及解决方案,包括使用logging模块处理请求失败,采用多进程多线程并结合队列优化爬取流程,以及利用异步IO提高爬虫效率。同时,提到了Scrapy框架、Python多线程实例和异步协程的相关参考资料。
摘要由CSDN通过智能技术生成

如何加快爬虫(爬取Github API的速度)

最新

爬虫出现问题,request失败后,一个项目的都会break,需要再手动爬取
解决方案:
1 logging module
2 改变while,实现队列:这页爬完了 i+1 加到队列中 ,爬取失败后重新加入队列,这样就不用每次再开启
参考:https://blog.csdn.net/kun1280437633/article/details/80685334
3 爬取失败的放到一个list,爬取完成后,删除该list里面内容

import asyncio

import aiohttp
from bs4 import BeautifulSoup

import logging

class AsnycGrab(object):

   def __init__(self, url_list, max_threads):

       self.urls = url_list
       self.results = {
   }
       self.max_threads = max_threads

   def __parse_results(self, url, html):

       try:
           soup = BeautifulSoup(html, 'html.parser')
           title &
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值