用python带你爬取小视频,看完“身体一天不如一天”
Python现在非常火,语法简单而且功能强大,很多同学都想学Python!
python爬取小视频记录
学习python简单爬虫小程序,记录代码和学习过程
环境信息
python 2.7.12
分析与步骤
1. 要分析网站信息 http://www.budejie.com/video/
2. 查看网页不同页面的信息
http://www.budejie.com/video/2
http://www.budejie.com/video/3
http://www.budejie.com/video/4
可以知道,不同页面的URL规则,直接在后面输入数字查看跳转到不同页
3. 分析视频内容特点
如图:
如果你在学习Python的过程当中有遇见任何问题,可以加入python交流学企鹅群:【611+530+101】,多多交流问题,互帮互助,群里有不错的学习教程和开发工具。学习python有任何问题(学习方法,学习效率,如何就业),可以随时来咨询我
查看网页代码:
通过这段代码,我们可以考虑分析。在python代码中用一段存放描述内容,一段存放视频所在的url
对于每个url地址,通过urllib所提供的urlretrieve下载
4. 具体代码实现
# -*- encoding:utf8 -*-
import re
import sys
import urllib2
import urllib
import os
reload(sys)
sys.setdefaultencoding("utf-8")
#a = 1
url_name = []
def get(pageindex):
url = 'http://www.budejie.com/video/' + str(pageindex)
# var1.set('已经获取到第%s页的视频视频'%(a))
print url
html = urllib.urlopen(url).read()
url_reg = r'data-mp4="(.*?)"'
url_items = re.findall(url_reg, html)
name_reg = re.compile('<div class="j-r-list-c-desc".*?<a href=".*?>(.*?)</a>.*?</div>', re.S)
name_items = re.findall(name_reg, html)
for i, k in zip(name_items, url_items):
url_name.append([i, k])
#传入文件名和video地址
def saveVideo(filename,videoUrl):
print 'Saving : %s ...'%filename
urllib.urlretrieve(videoUrl,'D:\video\%s.mp4'%filename)
####main exec ####
for pageindex in range(1,3):
get(pageindex)
for index,item in enumerate(url_name):
saveVideo(index,item[1])
如果觉得有帮助,记得关注、转发、收藏哟~