python线程池的实现实例


Posted in Python onNovember 18, 2013

直接上代码:

# -*- coding: utf-8 -*- 
import Queue 
import threading
import urllib
import urllib2
import os
def down(url,n):
    print 'item '+str(n)+' start '
    filename=urllib2.unquote(url).decode('utf8').split('/')[-1]
    urllib.urlretrieve(url, filename)
    print 'item '+str(n)+' finish '

def worker():
    while True:
        i = q.get()
        url=i[0]
        n=i[1]
        down(url,n)
        q.task_done()

if __name__=="__main__":
    num_worker_threads=100
    f=open('url.txt')
    l=f.readlines()
    q = Queue.Queue()
    for i in range(num_worker_threads):
        t = threading.Thread(target=worker)
        t.daemon = True
        t.start()
    for i in range(0,len(l)):
        q.put((l[i],i))
    q.join()
Python 相关文章推荐
python文件和目录操作方法大全(含实例)
Mar 12 Python
python修改注册表终止360进程实例
Oct 13 Python
小白如何入门Python? 制作一个网站为例
Mar 06 Python
python中单下划线_的常见用法总结
Jul 10 Python
Python爬虫实现简单的爬取有道翻译功能示例
Jul 13 Python
Python面向对象之静态属性、类方法与静态方法分析
Aug 24 Python
对python requests的content和text方法的区别详解
Oct 11 Python
Python matplotlib通过plt.scatter画空心圆标记出特定的点方法
Dec 13 Python
python打印9宫格、25宫格等奇数格 满足横竖斜相加和相等
Jul 19 Python
Pytorch之卷积层的使用详解
Dec 31 Python
TensorFLow 数学运算的示例代码
Apr 21 Python
Python Unittest原理及基本使用方法
Nov 06 Python
python批量导出导入MySQL用户的方法
Nov 15 #Python
python连接MySQL、MongoDB、Redis、memcache等数据库的方法
Nov 15 #Python
python实现代理服务功能实例
Nov 15 #Python
Python(Tornado)模拟登录小米抢手机
Nov 12 #Python
Python3实现的腾讯微博自动发帖小工具
Nov 11 #Python
python正则分组的应用
Nov 10 #Python
python Django连接MySQL数据库做增删改查
Nov 07 #Python
You might like
php中利用str_pad函数生成数字递增形式的产品编号
2013/09/30 PHP
PHP读书笔记_运算符详解
2016/07/01 PHP
php使用SAE原生Mail类实现各种类型邮件发送的方法
2016/10/10 PHP
PHP实现新型冠状病毒疫情实时图的实例
2020/02/04 PHP
基于jQuery的ajax功能实现web service的json转化
2009/08/29 Javascript
jQuery创建插件的代码分析
2011/04/14 Javascript
JS判断两个时间大小的示例代码
2014/01/28 Javascript
js控制浏览器全屏示例代码
2014/02/20 Javascript
jQuery获取动态生成的元素示例
2014/06/15 Javascript
Backbone.js框架中简单的View视图编写学习笔记
2016/02/14 Javascript
js select下拉联动 更具级联性!
2020/04/17 Javascript
jQuery中的deferred对象和extend方法详解
2017/05/08 jQuery
vue上传图片组件编写代码
2017/07/26 Javascript
JavaScript判断输入是否为数字类型的方法总结
2017/09/28 Javascript
jquery 验证用户名是否重复代码实例
2019/05/14 jQuery
vue实现的上拉加载更多数据/分页功能示例
2019/05/25 Javascript
js实现整体缩放页面适配移动端
2020/03/31 Javascript
Postman如何实现参数化执行及断言处理
2020/07/28 Javascript
Vue利用localStorage本地缓存使页面刷新验证码不清零功能的实现
2020/09/04 Javascript
解决element-ui的下拉框有值却无法选中的情况
2020/11/07 Javascript
浅谈Python中的可变对象和不可变对象
2017/07/07 Python
python使用Pycharm创建一个Django项目
2018/03/05 Python
在Python中通过getattr获取对象引用的方法
2019/01/21 Python
Python Numpy库常见用法入门教程
2020/01/16 Python
Python接口开发实现步骤详解
2020/04/26 Python
基于python实现百度语音识别和图灵对话
2020/11/02 Python
使用phonegap进行本地存储的实现方法
2017/03/31 HTML / CSS
自考毕业自我鉴定范文
2013/10/27 职场文书
警察先进个人事迹材料
2014/05/16 职场文书
董事长秘书工作总结
2015/08/14 职场文书
2015教师个人师德工作总结
2015/10/23 职场文书
银行岗位培训心得体会
2016/01/09 职场文书
《浅水洼里的小鱼》教学反思
2016/02/16 职场文书
同学会演讲稿
2019/04/02 职场文书
python数据可视化JupyterLab实用扩展程序Mito
2021/11/20 Python
通过Python把学姐照片做成拼图游戏
2022/02/15 Python