一段下载魔兽世界历史音频的代码

有一位强人做了魔兽世界历史的朗读版本,效果非常不错
可以用以下的代码来下载这些音频
#!/usr/bin/python
# -*- coding: mbcs -*-
import urllib2
import re
# Code By : LiJia, http://blog.csdn.net/imjj
# Date : 2007-05-04
# Purpose : download wow history audio
def get_view_list(nga_url):
f = urllib2.urlopen(nga_url)
#f = open(nga_url)
r = re.compile("/[url=(http://www/.Maidee/.com/program//d+)/](.+?)/[/url/]", re.I)
view_map = {}
for line in f:
ms = r.findall(line)
i = 1
for m in ms:
mp3_name = "%03d.%s" % (i, m[1])
view_map[m[0]] = mp3_name
i += 1
return view_map
def get_mp3_url(view_url):
f = urllib2.urlopen(view_url)
#f = open(view_url)
r = re.compile("http://www/.Maidee/.com/play/.php/?id=/d+", re.I)
for line in f:
m = r.search(line)
if m != None:
return m.group(0)
return ""
def download(url, local_filename):
remote_file = urllib2.urlopen(url)
local_file = open(local_filename, "wb")
print "下载 %s 到 %s" % (url, local_filename),
fsize = int(remote_file.info()["Content-Length"])
print "%d 字节..." % fsize
unitsize = fsize / 25
readsize = 0
i = 1
data = remote_file.read(1024)
while len(data) == 1024:
local_file.write(data)
readsize += len(data)
if readsize > i * unitsize:
print "=",
i += 1
data = remote_file.read(1024)
local_file.write(data)
print "="
print "读取文件列表"
view_list = get_view_list("http://bbs.ngacn.com/read.php?tid=761316&fpage=1")
print "读取到 %d 文件列表" % len(view_list)
for view_url, mp3_name in view_list.iteritems():
mp3_url = get_mp3_url(view_url)
download(mp3_url, mp3_name + ".mp3")
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值