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脚本操作MongoDB的教程
Apr 16 Python
连接Python程序与MySQL的教程
Apr 29 Python
python中numpy的矩阵、多维数组的用法
Feb 05 Python
Python OpenCV处理图像之图像像素点操作
Jul 10 Python
Python3自动签到 定时任务 判断节假日的实例
Nov 13 Python
Python设计模式之建造者模式实例详解
Jan 17 Python
Python代理IP爬虫的新手使用教程
Sep 05 Python
Python log模块logging记录打印用法解析
Jan 20 Python
Python 操作 PostgreSQL 数据库示例【连接、增删改查等】
Apr 21 Python
pandas DataFrame 数据选取,修改,切片的实现
Apr 24 Python
python实现学生管理系统开发
Jul 24 Python
Django通过设置CORS解决跨域问题
Nov 26 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
IIS6.0+PHP5.x+MySQL5.x+Zend3.0x+GD+phpMyAdmin2.8x通用安装实例(已经完成)
2006/12/06 PHP
php 转换字符串编码 iconv与mb_convert_encoding的区别说明
2011/11/10 PHP
在CentOS上搭建LAMP+vsftpd环境的简单指南
2015/08/01 PHP
PHP实现图片不变型裁剪及图片按比例裁剪的方法
2016/01/14 PHP
Laravel timestamps 设置为unix时间戳的方法
2019/10/11 PHP
DOMAssitant最新版 DOMAssistant 2.5发布
2007/12/25 Javascript
js获取当前select 元素值的代码
2010/04/19 Javascript
javascript基础知识大集锦(二) 推荐收藏
2011/01/13 Javascript
js创建对象的方式总结
2015/01/10 Javascript
使用JS画图之点、线、面
2015/01/12 Javascript
js+css实现文字散开重组动画特效代码分享
2015/08/21 Javascript
使用jQuery实现Web页面换肤功能的要点解析
2016/05/12 Javascript
jQuery Ajax Post 回调函数不执行问题的解决方法
2016/08/15 Javascript
Node调用Java的示例代码
2017/09/20 Javascript
AngularJS集合数据遍历显示的实例
2017/12/27 Javascript
Javascript实现异步编程的过程
2018/06/18 Javascript
使用gulp构建前端自动化的方法示例
2018/12/25 Javascript
ES6基础之字符串和函数的拓展详解
2019/08/22 Javascript
Vue如何提升首屏加载速度实例解析
2020/06/25 Javascript
vue项目查看vue版本及cli版本的实现方式
2020/10/24 Javascript
在 Django/Flask 开发服务器上使用 HTTPS
2014/07/03 Python
Python使用回溯法子集树模板获取最长公共子序列(LCS)的方法
2017/09/08 Python
python 解压pkl文件的方法
2018/10/25 Python
Django2 连接MySQL及model测试实例分析
2019/12/10 Python
python 函数嵌套及多函数共同运行知识点讲解
2020/03/03 Python
django 解决自定义序列化返回处理数据为null的问题
2020/05/20 Python
python如何编写win程序
2020/06/08 Python
网络编辑职责
2014/03/01 职场文书
中文专业毕业生自荐信
2014/05/24 职场文书
电教室标语
2014/06/20 职场文书
工程资料员岗位职责
2015/04/13 职场文书
《画家和牧童》教学反思
2016/02/17 职场文书
laravel ajax curd 搜索登录判断功能的实现
2021/04/17 PHP
分享几个JavaScript运算符的使用技巧
2021/04/24 Javascript
python实现简单的聊天小程序
2021/07/07 Python
vue 实现弹窗关闭后刷新效果
2022/04/08 Vue.js