首页 > 其他分享 >实战案例四:异步实现爬虫

实战案例四:异步实现爬虫

时间:2024-08-27 21:17:52浏览次数:5  
标签:实战 异步 url text 爬虫 session __ async asyncio

爬虫

pip3 install aiohttp
import aiohttp
import asyncio


async def fetch(session, url):
    print("发送请求:", url)
    async with session.get(url, verify_ssl=False) as response:
        text = await response.text()
        print("得到结果:", url, len(text))
        return text


async def main():
    async with aiohttp.ClientSession() as session:
        url_list = [
            'https://python.org',
            'https://www.baidu.com',
            'https://www.pythonav.com'
        ]
        tasks = [ asyncio.create_task(fetch(session, url)) for url in url_list]

        done,pending = await asyncio.wait(tasks)


if __name__ == '__main__':
    asyncio.run( main() )

总结

最大的意义:通过一个线程利用其IO等待时间去做一些其他事情。

标签:实战,异步,url,text,爬虫,session,__,async,asyncio
From: https://www.cnblogs.com/Tmars/p/18383562

相关文章

  • 基于python的保险业务数据可视化分析系统【python-爬虫-大数据定制】
    精彩专栏推荐订阅:在下方专栏......
  • 用Python实现时间序列模型实战——Day1:时间序列的基本概念
    一、学习内容1.时间序列数据的定义与特点定义:时间序列数据是一组按时间顺序排列的观测值。时间序列的每个观测值都与特定时间点相关联。例如,气温每天的记录、股票每日的收盘价等。特点:时间依赖性:时间序列数据的一个基本特点是当前数据点可能依赖于之前的一个或多个数据点......
  • 爬虫使用代理IP池:提高数据抓取效率的绝佳实践
    爬虫使用代理IP池的最佳实践在进行网络爬虫和数据抓取时,使用代理IP池是一个有效的策略,可以提高抓取效率,避免IP封禁。本文将详细介绍如何在爬虫中使用代理IP池,并提供一些最佳实践。一、什么是代理IP池?代理IP池是指一组可用的代理IP地址集合。通过轮换使用这些代理IP,爬虫可以......
  • IP代理可以做爬虫吗?探讨其可行性与相应实践
    IP代理在网络爬虫中的应用在网络爬虫的世界里,IP代理就像是爬虫的“隐形斗篷”,帮助它们在获取数据的过程中隐藏真实身份,避免被目标网站识别和封禁。那么,IP代理到底能否用于爬虫呢?答案是肯定的!接下来,我们将深入探讨IP代理在爬虫中的重要性、工作原理以及使用时需要注意的事项。......
  • 爬虫初学者用哪家代理ip?
    选择合适的代理IP服务商的指南在网络爬虫的世界中,代理IP扮演着至关重要的角色。对于初学者来说,选择一个合适的代理IP服务商不仅可以提高数据抓取的效率,还能有效降低被封禁的风险。本文将探讨好的代理IP服务商应具备的特点,以及在选择和使用时需要注意的事项。一、好的代理IP服......
  • 爬虫使用优质代理:确保高效稳定的数据采集之道
    爬虫使用优质代理的最佳实践在进行网络爬虫时,使用优质代理就像是为你的爬虫装上了强劲的发动机,能够大幅提升数据抓取的效率和成功率。然而,选择和使用优质代理并非易事,今天我们就来探讨如何在爬虫中有效使用优质代理。1.什么是优质代理?优质代理通常指的是那些速度快、稳定性......
  • 爬虫使用代理IP:提升数据抓取效率的实践
    爬虫使用代理IP的技巧和方法在进行网络爬虫时,使用代理IP可以帮助你提高数据抓取效率和保护隐私。本文将介绍爬虫使用代理IP的技巧和方法,帮助你更好地进行数据抓取。为什么爬虫需要使用代理IP在进行大规模数据抓取时,目标网站可能会检测到你的爬虫行为,并对你的IP地址进行封锁......
  • asyncio + httpx异步请求板子
    AI写的asyncio+httpx异步请求板子importasyncioimporthttpximportjsonimportaiofilesfrompathlibimportPathproject_dir=Path(__file__).resolve().parent#使用代理proxy="http://username:password@ip:port"#异步并发数max_concurrency=5input_f......
  • 图论:商业级网络爬虫思考
    文章目录引言网络爬虫核心功能有向性与强连通性节点的不可枚举性动态变化的拓扑结构体量(海量规模)有效的数据抓取数据存储与管理流量控制与合规性并行协调关键点分布式任务队列分布式并行抓取优化流量限制(网速,合理化带宽占用)控制请求频率设置请求头错误处理与重试代理和......
  • 二分查找算法:朴素二分+左右边界二分&力扣实战应用
    目录:1、二分查找算法简介2、算法原理及时间复杂度分析2.1朴素二分算法3.2查找左右边界的二分算法3.2.1查找左边界3.2.2查找右边界3.3时间复杂度分析3、二分查找算法模版3.1朴素二分模版3.2查找左右边界的二分模版4、算法应用【leetcode】4.1题一:搜素插入位......