使用Python实现下载网易云音乐的高清MV


Posted in Python onMarch 16, 2015

Python下载网易云音乐的高清MV,没有从首页进去解析,直接循环了....

downPage1.py

#coding=utf-8

import urllib

import re

import os

def getHtml(url):

    page = urllib.urlopen(url)

    html = page.read()

    return html

def getVideo(html):

    reg = r'hurl=(.+?\.jpg)'

    imgre = re.compile(reg)

    imglist = re.findall(imgre,html)

    return imglist

for num in range(28000,1000000):

    print num

    html = getHtml("http://music.163.com/mv?id=%s"%num)

    parsed = getVideo(html)

    if  len(parsed)==0:

        continue

    vedioUrls = parsed[0].split("&")

    artist = vedioUrls[4].split("=")[1].decode('utf-8').strip()

    song = vedioUrls[3].split("=")[1].decode('utf-8').strip()

    if  len(vedioUrls[0])==0:

        continue

    filename = '%s/%s.mp4' %(artist,song)

    if "/" in song:

        continue

    if os.path.exists(filename):

        print 'the MV file exists.%s'%num

    else:

        print 'the MV is downloding.%s'%num

        if  os.path.exists(artist):

            print ""

        else:

            os.makedirs(artist)

        urllib.urlretrieve(vedioUrls[0],filename)

以上就是本文分享的全部代码了,希望大家能够喜欢。

Python 相关文章推荐
Python可跨平台实现获取按键的方法
Mar 05 Python
Python多线程编程(一):threading模块综述
Apr 05 Python
Python遍历文件夹和读写文件的实现方法
May 10 Python
Python实现的圆形绘制(画圆)示例
Jan 31 Python
python实现屏保计时器的示例代码
Aug 08 Python
python3使用flask编写注册post接口的方法
Dec 28 Python
Python XlsxWriter模块Chart类用法实例分析
Mar 11 Python
不到40行代码用Python实现一个简单的推荐系统
May 10 Python
对python中url参数编码与解码的实例详解
Jul 25 Python
Django admin model 汉化显示文字的实现方法
Aug 12 Python
Python 中的函数装饰器和闭包详解
Feb 06 Python
python自动化调用百度api解决验证码
Apr 13 Python
python使用点操作符访问字典(dict)数据的方法
Mar 16 #Python
python用来获得图片exif信息的库实例分析
Mar 16 #Python
python通过pil模块获得图片exif信息的方法
Mar 16 #Python
使用Python抓取模板之家的CSS模板
Mar 16 #Python
Python实现竖排打印传单手机号码易撕条
Mar 16 #Python
python通过exifread模块获得图片exif信息的方法
Mar 16 #Python
python通过pil模块将raw图片转换成png图片的方法
Mar 16 #Python
You might like
php 文件上传系统手记
2009/10/26 PHP
php检测网页是否被百度收录的函数代码
2013/10/09 PHP
PHP实现文件下载详解
2014/11/27 PHP
php根据命令行参数生成配置文件详解
2019/03/15 PHP
thinkphp 框架数据库切换实现方法分析
2020/05/18 PHP
javascript整除实现代码
2010/11/23 Javascript
cument.execCommand()用法深入理解
2012/12/04 Javascript
js 判断计算字符串长度/判断空的简单方法
2013/08/05 Javascript
jQuery实现鼠标悬停背景翻转的黑色导航菜单代码
2015/09/14 Javascript
深入浅析JavaScript面向对象和原型函数
2016/02/06 Javascript
node.js微信公众平台开发教程
2016/03/04 Javascript
Angular2 组件通信的实例代码
2017/06/23 Javascript
js获取css的各种样式并且设置他们的方法
2017/08/22 Javascript
JavaScript 下载svg图片为png格式
2018/06/21 Javascript
js实现删除li标签一行内容
2019/04/16 Javascript
小程序接口的promise化的实现方法
2019/12/11 Javascript
js编写简易的计算器
2020/07/29 Javascript
[01:56]林书豪DOTA2上海特级锦标赛励志短片
2016/03/05 DOTA
python检查指定文件是否存在的方法
2015/07/06 Python
Python中time模块和datetime模块的用法示例
2016/02/28 Python
Pycharm学习教程(5) Python快捷键相关设置
2017/05/03 Python
浅谈Python 列表字典赋值的陷阱
2019/01/20 Python
django的ORM操作 删除和编辑实现详解
2019/07/24 Python
python 两个数据库postgresql对比
2019/10/21 Python
django admin 添加自定义链接方式
2020/03/11 Python
解析浏览器的一些“滚动”行为鉴赏
2019/09/16 HTML / CSS
什么造成了Java里面的异常
2016/04/24 面试题
计算机工程学院个人求职信
2013/10/05 职场文书
校领导推荐信
2013/11/01 职场文书
学年末自我鉴定
2014/01/21 职场文书
电大毕业生自我鉴定
2014/04/10 职场文书
通知的格式范文
2015/04/27 职场文书
大学升旗仪式主持词
2015/07/04 职场文书
读《瓦尔登湖》有感:每个人都需要一个瓦尔登湖
2019/10/17 职场文书
python基础入门之字典和集合
2021/06/13 Python
Python初识逻辑与if语句及用法大全
2021/08/07 Python