抓取CNTV视频链接
写这个是为了下载纪录片用的。
比如这个页面:舌尖上的中国第二季。
它会抓取这个页面的所有视频链接并输出到txt文件。
#!/usr/bin/env python
# -*- coding: UTF-8 -*-
import requests,re,os
#取网页内容
def gethtml(url):
data = requests.get(url)
return data.text
#正则匹配部分
def reurlstart(url):
#os.remove('getcntv.txt')
info = []
text = gethtml(url)
#央视的视频链接一般为 http://tv.cctv.com/年/月/日/乱七八糟.shtml
#正则匹配式:[a-zA-z]+://tv.cctv.com/[0-9]*/[0-9]*/[0-9]*/.*"
data = re.findall(r'[a-zA-z]+://tv.cctv.com/[0-9]*/[0-9]*/[0-9]*/.*"',text,re.I)
for i in data:
i = i.split('"')
if i[0] != url:
#这里要进行一次分割,因为原链接是 视频链接 + " + html
info.append(i[0])
#得到的数组有重复的链接,所以要去重
dellist(info)
#去除重复链接
def dellist(list):
list2 = []
for i in list:
if i not in list2:
print i
wfile(i)
list2.append(i)
return list2
#写文件
def wfile(text):
f = open('getcntv.txt','a+')
f.write(text + '\n')
f.close()
a = raw_input('URL:')
reurlstart(a)