首页
沸点
课程
数据标注
HOT
AI Coding
更多
直播
活动
APP
插件
直播
活动
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
登录
注册
确定删除此收藏集吗
删除后此收藏集将被移除
取消
确定删除
确定删除此文章吗
删除后此文章将被从当前收藏集中移除
取消
确定删除
编辑收藏集
名称:
描述:
0
/100
公开
当其他人关注此收藏集后不可再更改为隐私
隐私
仅自己可见此收藏集
取消
确定
asyncio
订阅
物极必反
更多收藏集
微信扫码分享
微信
新浪微博
QQ
10篇文章 · 0订阅
实战 | 用aiohttp和uvloop实现一个高性能爬虫
asyncio于Python3.4引入标准库,增加了对异步I/O的支持,asyncio基于事件循环,可以轻松实现异步I/O操作。接下来,我们用基于asyncio的库实现一个高性能爬虫。 Earth View from Google Earth是一款Chrome插件,会在打开新标…
Python 协程:从 yield/send 到 async/await
Python 由于众所周知的 GIL 的原因,导致其线程无法发挥多核的并行计算能力(当然,后来有了 multiprocessing,可以实现多进程并行),显得比较鸡肋。既然在 GIL 之下,同一时刻只能有一个线程在运行,那么对于 CPU 密集的程序来说,线程之间的切换开销就成了拖累,而以 I/O 为瓶颈的程序正是协程所擅长的: 多任务并发(非并行),每个任务在合适的时候挂起(发起 I/O)和恢复 (I/O 结束)
简述python异步i/o库 —— asyncio
python的asyncio库以协程为基础,event_loop作为协程的驱动和调度模型。该模型是一个单线程的异步模型,类似于node.js。下图我所理解的该模型 事件循环通过select()来监听是否存在就绪的事件,如果存在就把事件对应的callback添加到一个task l…
简述python的yield和yield from
函数可以看成是一堆指令的集合。在函数中加入yield可以把一个函数变成一个generator,虽然调用的方式不一样了,但是其实现的功能和原来的函数基本是一样的。 而yield在这其中的作用是,把运行中的函数进行了一个保存退出(也就是中断)。然后把线程的的控制权从函数手里交换到我…
【Python3】利用selenium抓取知乎用户的文章
前段时间,阅读知乎上一些用户写的文章的时候觉得阅读起来比较麻烦,不符合我的阅读感受。比如下边这个,我想阅读牛客网的文章(如图1所示),我会通过标题先进行筛选,但是这样滚动下滑太麻烦了,所以想着不如将标题信息爬下来,另外,点赞数和评论数也顺便抓取下来,这样还能看该用户被点赞数最多…
爬虫代理小记与 aiohttp 代理尝试
在这篇文章中,作者总结了一些爬虫代理的资料和知识,并尝试使用 asyncio 和 aiohttp 使用代理 ip 访问目标网站。
asyncio中使用阻塞函数
最近在学习python的异步编程标准库asyncio,在学习期间,想到如果想要在asyncio中使用阻塞的函数调用,但是不阻塞事件循环的当前线程,应该怎么操作? 这边文章可能会出现错误,希望大家能够提出 一起学习
Python 之 asyncio
async 与 await, 这是在 Python3.5 中引入的新语法,用于增强 Python 协程方面的支持。
理解Python的协程(Coroutine)
由于GIL的存在,导致Python多线程性能甚至比单线程更糟。 于是出现了协程(Coroutine)这么个东西。 协程由于由程序主动控制切换,没有线程切换的开销,所以执行效率极高。对于IO密集型任务非常适用,如果是cpu密集型,推荐多进程+协程的方式。 在Python3.4之前…
python并发3:使用asyncio编写服务器
前几篇文章 python并发 1:使用 futures 处理并发 python并发2:使用asyncio处理并发 asyncio 上一篇我们介绍了 asyncio 包,以及如何使用异步编程管理网络应用中的高并发。在这一篇,我们主要介绍使用 asyncio 包编程的两个例子。 as…