python使用urllib模块开发的多线程豆瓣小站mp3下载器


Posted in Python onJanuary 16, 2014
#! /usr/bin/python2.7
# -- coding:utf-8 --
import os, urllib,urllib2, thread,threading
import re
#匹配音乐url
reg=re.compile('{"name":"(.+?)".+?"rawUrl":"(.+?)",.+?}', re.I)

class downloader(threading.Thread):
        def __init__(self, url, name):
                threading.Thread.__init__(self)
                self.url=url
                self.name=name
        def run(self):
                print 'downloading from %s' % self.url
                urllib.urlretrieve(self.url, self.name)
threads=[]
#多线程下载文件
def main(url):
        response=urllib.urlopen(url)
        text=response.read()
        groups=re.finditer(reg, text)
        for g in groups:
                name=g.group(1).strip() + ".mp3"
                path=g.group(2).replace('\\', '')
                t=downloader(path, name)
                threads.append(t)
                t.start()
                                                                                                                                                      
if __name__ == '__main__':
        main("http://site.douban.com/huazhou/")
        for t in threads:
                t.join()
Python 相关文章推荐
详解Python中的文本处理
Apr 11 Python
Python脚本利用adb进行手机控制的方法
Jul 08 Python
浅析Windows 嵌入python解释器的过程
Jul 26 Python
Python实现TCP探测目标服务路由轨迹的原理与方法详解
Sep 04 Python
Tensorflow 模型转换 .pb convert to .lite实例
Feb 12 Python
python用WxPython库实现无边框窗体和透明窗体实现方法详解
Feb 21 Python
python求前n个阶乘的和实例
Apr 02 Python
通过python调用adb命令对App进行性能测试方式
Apr 23 Python
Python基于内置函数type创建新类型
Oct 22 Python
浅析Python 中的 WSGI 接口和 WSGI 服务的运行
Dec 09 Python
Pandas直接读取sql脚本的方法
Jan 21 Python
pip/anaconda修改镜像源,加快python模块安装速度的操作
Mar 04 Python
python使用urllib模块和pyquery实现阿里巴巴排名查询
Jan 16 #Python
python3.3教程之模拟百度登陆代码分享
Jan 16 #Python
python解析发往本机的数据包示例 (解析数据包)
Jan 16 #Python
python多线程扫描端口示例
Jan 16 #Python
python发送arp欺骗攻击代码分析
Jan 16 #Python
分析python服务器拒绝服务攻击代码
Jan 16 #Python
python获取豆瓣电影简介代码分享
Jan 16 #Python
You might like
php伪静态之APACHE篇
2014/06/02 PHP
PHP下载远程文件到本地存储的方法
2015/03/24 PHP
Alliance vs Liquid BO3 第二场2.13
2021/03/10 DOTA
javascript常用方法、属性集合及NodeList 和 HTMLCollection 的浏览器差异
2010/12/25 Javascript
jQuery EasyUI API 中文文档 - Draggable 可拖拽
2011/09/29 Javascript
JavaScript图片放大技术(放大镜)实现代码分享
2013/11/14 Javascript
Javascript中typeof 用法小结
2015/05/12 Javascript
深入分析jQuery的ready函数是如何工作的(工作原理)
2015/12/17 Javascript
JS实现页面载入时随机显示图片效果
2016/09/07 Javascript
深入浅出webpack教程系列_安装与基本打包用法和命令参数详解
2017/09/10 Javascript
使用watch监听路由变化和watch监听对象的实例
2018/02/24 Javascript
js将键值对字符串转为json字符串的方法
2018/03/30 Javascript
vue element自定义表单验证请求后端接口验证
2019/12/11 Javascript
Webpack中SplitChunksPlugin 配置参数详解
2020/03/24 Javascript
python文件和目录操作函数小结
2014/07/11 Python
python如何生成各种随机分布图
2018/08/27 Python
在python中实现同行输入/接收多个数据的示例
2019/07/20 Python
django之对FileField字段的upload_to的设定方法
2019/07/28 Python
python点击鼠标获取坐标(Graphics)
2019/08/10 Python
Python+Tensorflow+CNN实现车牌识别的示例代码
2019/10/11 Python
numpy创建单位矩阵和对角矩阵的实例
2019/11/29 Python
Python交互环境下打印和输入函数的实例内容
2020/02/16 Python
pyinstaller打包找不到文件的问题解决
2020/04/15 Python
python 代码实现k-means聚类分析的思路(不使用现成聚类库)
2020/06/01 Python
让IE6支持css3,让 IE7、IE8 都支持CSS3
2011/10/09 HTML / CSS
俄罗斯厨房产品购物网站:COOK HOUSE
2021/03/15 全球购物
班组长岗位职责范本
2014/01/05 职场文书
党员岗位承诺口号大全
2014/03/28 职场文书
药剂专业求职信
2014/06/20 职场文书
国际语言毕业生求职信
2014/07/08 职场文书
护士医德医风自我评价
2014/09/15 职场文书
本科毕业论文导师评语
2014/12/31 职场文书
2015年求职自荐信范文
2015/03/04 职场文书
导师鉴定意见
2015/06/05 职场文书
2015质检员个人年终工作总结
2015/10/23 职场文书
Python Matplotlib库实现画局部图
2021/11/17 Python