用python抓取在线视频地址

喜欢优酷的视频,但是要下载它的客户端才能下载在线的视频,这一点很多朋友和妹纸都觉得很不爽,我为了自己练手自己写了一个解析视频地址的小工具。。。。反正也不是什么高科技,公开一下源代码,让大家学习一下。。。

 1 import re
 2 import sys
 3 import urllib
 4 import urllib2
 5 import datetime
 6 from win32clipboard import *
 7 from win32con import CF_TEXT
 8 
 9 def get_Clipboard():    
10          OpenClipboard()    
11          text = GetClipboardData(CF_TEXT)
12          CloseClipboard()
13          return text
14 
15 
16 
17 class CFlvcd(object):
18     def __init__(self):
19         self.url = ""
20         self.pattern = re.compile(r"<a href *= *\"(http://f\.youku\.com/player/getFlvPath/[^\"]+)")
21         self.headers = {"Accept":"*/*", "Accept-Language":"zh-CN", "":"", 
22                         "User-Agent":"Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.1)", 
23                         #"Accept-Encoding":"gzip, deflate", 
24                         "Connection":"Keep-Alive"}
25  
26     def parse(self, url):
27         self.url = "http://www.flvcd.com/parse.php?kw=" + url + "&format=super"
28         req = urllib2.Request(url=self.url, headers=self.headers)
29         res = urllib2.urlopen(req)
30         data = res.read()
31         re_res = self.pattern.findall(data)
32         if re_res != None:
33             filename = datetime.datetime.now().strftime("%Y%m%d-%H%M%S.lst")
34             fhandle = open(filename, "w")
35             for url in re_res:
36                 # 注意是\r\n还是\n
37                 fhandle.write(url + "\n")
38             fhandle.close()
39             print("Parse URL Done!")
40         else:
41             print("URL Not Found")
42 
43 def main():
44     flvcd=CFlvcd()
45     print'你要下载的视频地址是'
46     print get_Clipboard()
47     print'确定获取请按1'
48     a=raw_input()
49     if (a=='1'):
50        flvcd.parse(get_Clipboard())
51     
52     
53     
54 
55 if __name__ == "__main__":
56     main()

 

转载于:https://www.cnblogs.com/pd520/archive/2012/12/31/2840922.html

### 回答1: 首先,需要安装两个库:requests和beautifulsoup4。然后,使用requests库发送GET请求获取网页源代码,使用beautifulsoup4解析网页源代码。最后,使用beautifulsoup4提取视频链接并使用requests库下载视频。 示例代码如下: ```python import requests from bs4 import BeautifulSoup url = "https://www.pexels.com/search/videos/" response = requests.get(url) soup = BeautifulSoup(response.text, 'html.parser') videos = soup.find_all('video') for video in videos: video_url = video['src'] response = requests.get(video_url) open(video_url.split("/")[-1], "wb").write(response.content) ``` 这仅仅是一个简单的示例,实际上,你需要添加更多的处理来保证程序的稳定性,还可能需要添加更多的处理来解决反爬虫等问题。 ### 回答2: 使用Python抓取Pexels视频可以采取以下步骤: 1. 导入所需的模块,包括requests、bs4和os模块。 ```python import requests from bs4 import BeautifulSoup import os ``` 2. 创建一个函数来从Pexels网站上获取视频链接: ```python def get_video_links(url): response = requests.get(url) soup = BeautifulSoup(response.content, 'html.parser') video_links = [] for video in soup.find_all('video'): src = video.get('src') if src: video_links.append(src) return video_links ``` 3. 创建一个函数来下载视频到本地文件夹: ```python def download_videos(video_links, folder): if not os.path.exists(folder): os.makedirs(folder) for i, link in enumerate(video_links): response = requests.get(link) filename = os.path.join(folder, f'video_{i}.mp4') with open(filename, 'wb') as f: f.write(response.content) print(f'Saved video {i+1}/{len(video_links)}') ``` 4. 调用上述函数来抓取和下载视频: ```python url = 'https://www.pexels.com/videos' video_links = get_video_links(url) download_videos(video_links, 'videos') ``` 以上代码将从Pexels网站抓取视频链接,并将其保存到名为"videos"的文件夹中。你可以修改url和文件夹路径来适应你的需求。 请注意,使用任何网站上的内容时,请遵守该网站的使用条款和规定,确保你的使用是合理合法的。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值