python gevent 爬虫

'''
协程 并发 爬网页
使用urllib 和 gevent 的时候,一般要添加一个人补丁monkey
'''

from   urllib import request
from  gevent import  monkey
import  gevent

#把当前程序的所有 io 操作的做了标记
monkey.patch_all()

def f(url):
    print('get :%s'%url)
    resp = request.urlopen(url)
    data = resp.read()
    print('%d bytes received form  %s.'%(len(data),url))
    print('data:',data)

gevent.joinall([
    #启动协程
    gevent.spawn(f,'https://python.org'),
    gevent.spawn(f, 'https://baidu.com'),
    gevent.spawn(f, 'https://github.com'),
])

 

posted on 2017-12-19 11:51  gaizhongfeng  阅读(913)  评论(0编辑  收藏  举报