鱼C论坛

 找回密码
 立即注册
查看: 2887|回复: 4

[已解决]异步爬取信息老是被封IP ,请问怎么操作可以降低被封的概率??

[复制链接]
发表于 2021-6-11 00:29:51 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
想用异步爬取 www.kuaidaili.com  的免费代理ip 和一个漫画网站的所有漫画,但是每次运行程序,爬了几条之后就被封了,请问大佬要怎么调整发送频率? 这是代码
async def get_ip(session,page):
    #访问目标网页获取html信息
    url = f'https://www.kuaidaili.com/free/inha/{page}/'
    async with session.get(url) as resp:
        text = await resp.text()
        #解析信息
        element = etree.HTML(text)
        parse_list = element.xpath('//*[@id="list"]/table/tbody/tr')
        ip_list = []
        for parse in parse_list:
            dic = {}
            ip_name = parse.xpath('./td[1]/text()')[0]
            port_name = parse.xpath('./td[2]/text()')[0]
            tpye_name = parse.xpath('./td[4]/text()')[0]
            dic[tpye_name] = ip_name + ':' + port_name
            ip_list.append(dic)

async def main():
    async with aiohttp.ClientSession() as session:
         task = [asyncio.create_task(get_ip(session,index)) for index in range(1000)]
         await asyncio.wait(task)

if __name__ == '__main__':
    asyncio.get_event_loop().run_until_complete(main())
最佳答案
2021-6-11 11:06:36
1、代理池。池中代理可用数量不足,则再换过可用代理
2、加延迟。不过会降低效率
3、每次爬取更换IP(代理)和浏览器UA标志是最优的办法
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2021-6-11 10:58:32 | 显示全部楼层
换个好用点的代理吧
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2021-6-11 11:06:36 | 显示全部楼层    本楼为最佳答案   
1、代理池。池中代理可用数量不足,则再换过可用代理
2、加延迟。不过会降低效率
3、每次爬取更换IP(代理)和浏览器UA标志是最优的办法
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2021-6-11 23:05:50 | 显示全部楼层
通常的方法是,用 time 库中的 time.sleep() 方法,让爬取的动作暂停,暂停的时间可以再加一个 random 库下的 randint 函数,取一个时间范围(单位:秒)
import time
import random

'''
此处爬虫代码不做列举
'''
#取1到15之间的随机整数
sleep_second = random.randint(1, 15)
#让爬虫暂停若干秒
time.sleep(sleep_second)
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2021-6-13 21:42:59 | 显示全部楼层
笨鸟学飞 发表于 2021-6-11 11:06
1、代理池。池中代理可用数量不足,则再换过可用代理
2、加延迟。不过会降低效率
3、每次爬取更换IP(代 ...

谢谢指点
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2025-1-15 13:58

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表