asyncio学习(1)
来源:互联网 发布:淘宝刷単平台 编辑:程序博客网 时间:2024/06/05 04:34
官方教程:
【1】https://compiletoi.net/fast-scraping-in-python-with-asyncio/
【2】https://docs.python.org/3.4/library/asyncio.html
【3】http://aiohttp.readthedocs.io/en/stable/
我用的python版本是 3.5.2 ,官方给出的 body=yield from response.read_and_close() 方法不可行,然后我拆分成下面的代码,以后会继续学习 异步
import asyncioimport aiohttp@asyncio.coroutinedef wget(host): print ('wget %s' %host) connect=asyncio.open_connection(host,80) reader,writer=yield from connect header='GET / HTTP/1.0\r\nHost: %s\r\n\r\n' % host writer.write(header.encode('utf-8')) yield from writer.drain() while True: line=yield from reader.readline() if line ==b'\r\n': break print ('%s header > %s' %(host,line.decode('utf-8').rstrip())) writer.close()@asyncio.coroutinedef print_page(url): response=yield from aiohttp.request('GET',url) body=yield from response.read() response.close() print (body)#loop=asyncio.get_event_loop()#tasks=[wget(host) for host in ['mail.163.com','www.sina.com.cn','www.sohu.com']]#loop.run_until_complete(asyncio.wait(tasks))loop=asyncio.get_event_loop()loop.run_until_complete(asyncio.wait([print_page('http://tieba.baidu.com/i/357696678/concern'),print_page('http://www.baidu.com')]))loop.close()
0 0
- asyncio学习(1)
- python asyncio学习记录
- asyncio文档学习——消息循环EventLoop例子1
- asyncio
- asyncio
- asyncio
- python学习——asyncio
- python的异步IO模块asyncio学习
- swoole深入学习 5. AsyncIO 异步IO
- python的异步IO(asyncio aiohttp)
- Python之异步IO( asyncio) 协程
- Python学习:异步IO:协程和asyncio
- asyncio文档学习——消息循环EventLoop例子2
- asyncio文档学习——消息循环EventLoop例子3
- Mastering Python-Packt Publishing 2016(读书笔记)第1版(讲解3.5的coroutine、asyncio、metaclass等)
- Python 和 Asyncio 编写在线多人游戏(一)
- Python黑魔法 --- 异步IO( asyncio) 协程
- python asyncio
- Deployment Assembly
- Android系统版本号和Android API level对应表
- postgresql数据库允许某些网段内远程访问
- Kafka入门经典教程
- 基于OGG的Oracle与Hadoop集群准实时同步介绍
- asyncio学习(1)
- 安卓混淆异常 transformClassesAndResourcesWithProguardForRelease
- Java WEB 向客户端返回http状态302
- 装饰模式(python)
- jQuery简洁大方的登录页面模板
- 前端调试错误
- Proposition 2.1(Post-Processing)
- 把文件夹开放所有权限
- RHCSA