007真人007真人

来源:乐虎lehu国际娱乐之家  责任编辑:小易  

这篇文章主要介绍了python基于gevent实现并发下载器代码实例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下

并发下载原理

import gevent
from gevent import monkey
import urllib.request
monkey.patch_all()
def my_download(url):
    print('GET: %s' % url)
    resp = urllib.request.urlopen(url)
    data = resp.read()
    print('%d bytes received from %s.' % (len(data), url))
gevent.joinall([
    gevent.spawn(my_download, "https://www.baidu.com"),
    gevent.spawn(my_download, "https://www.cnblogs.com"),
    gevent.spawn(my_download, "https://www.huya.com")
  
])

运行结果:

GET: https://www.baidu.com
GET: https://www.cnblogs.com
GET: https://www.huya.com
227 bytes received from https://www.baidu.com.
46411 bytes received from https://www.cnblogs.com.
353563 bytes received from https://www.huya.com.

实现多张图片同时下载

import gevent
from gevent import monkey
import urllib.request


monkey.patch_all()


def my_download(url, image_path):
  print('GET: %s' % url)
  resp = urllib.request.urlopen(url)
  data = resp.read()
  print('%d bytes received from %s.' % (len(data), url))
  
  with open(image_path, "wb") as f:
    f.write(data)
gevent.joinall([
  gevent.spawn(my_download, "https://huyaimg.msstatic.com/cdnimage/anchorpost/1099/4c/73ff3e6ce165fb658b2082d4d126c6_2168_1544414129.jpg", "1.jpg"),
  gevent.spawn(my_download, "https://huyaimg.msstatic.com/cdnimage/anchorpost/1020/03/7949816c55f45b9adc9f03d9330af3_2168_1542941499.jpg", "2.jpg"), 
  gevent.spawn(my_download, "https://huyaimg.msstatic.com/cdnimage/anchorpost/1061/55/8071537fa10120c43c5a1359a88530_2168_1545302709.jpg", "3.jpg"),
])

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持乐虎lehu国际娱乐之家。

您可能感兴趣的文章:


  • 本文相关:
  • python生成器/yield协程/gevent写简单的图片下载器功能示例
  • 简单了解python gevent 协程使用及作用
  • 详解python之协程gevent模块
  • python并发亚洲最佳在线娱乐平台协程(coroutine)之gevent详解
  • python的网络亚洲最佳在线娱乐平台库gevent的安装及使用技巧
  • python的gevent框架的入门教程
  • 在python的gevent框架下执行异步的solr查询的教程
  • python 对多个csv文件分别进行处理的方法
  • python实现彩票系统
  • python用zip函数同时遍历多个迭代器示例详解
  • python获取文件路径、文件名、后缀名的实例
  • python入门之后再看点什么好?
  • python实现event回调机制的方法
  • 详解python使用递归、尾递归、循环三种方式实现斐波那契数列
  • python发送邮件实例分享
  • python命令 -u参数用法解析
  • 简单了解python 生成器 列表推导式 生成器表达式
  • 免责声明 - 关于我们 - 联系我们 - 广告联系 - 友情链接 - 帮助中心 - 频道导航
    Copyright © 2017 www.pradaoutletonline.net All Rights Reserved