在刷抖音的时候,看到有些比较喜欢的视频想保存下来,当然可以在抖音中直接保存到手机上,但是手机的存储毕竟是有限的,所以是不是有办法直接把视频保存到电脑上呢?
实现思路分享视频到微信解析分享短地址下载视频具体步骤1. 分享视频到微信
这一步需要使用到itchat库,通过pip安装
pip install itchat通过itchat登录微信到电脑端,并记录登录用户的UserName,用于后续接收信息的时候,只处理发给自己的信息
def login(): global owner # 登录 itchat.auto_login(hotReload=True, exitCallback=logout_callback) owner = str(itchat.get_friends(update=True)[0]["UserName"]) itchat.run()接收消息,并交给视频解析器解析下载,保存处理失败的信息到数据库,以便后续分析
@itchat.msg_register('Text') def text_replay(msg): from_user = msg['FromUserName'] if from_user == owner: print(msg.Content) success = DouYinService().download_share_video(msg.Content) if not success: wxMessageDao.create(WxMessage(message=str(msg.content), type="douyin"))获取到抖音分享的内容如下:
#在抖音,记录美好生活#他哥比他大27岁 http://v.douyin.com/rGNTPc/ 复制此链接,打开【抖音短视频】,直接观看视频!2. 解析分享短地址
从分享的内容中解析出视频的短地址:http://v.douyin.com/rGNTPc/
def get_share_url(self, share): if re.match("http", share, re.I): return share search_result = re.search(r'.*(http.*[/]?) .*', share, flags=re.M | re.I) if search_result: return search_result.group(1) return None在浏览器中打开短地址,发现地址栏的URL被跳转了

在页面上点击播放,就可以播放视频了,发现有一个请求,并且又是302重定向到一个地址

查看页面源代码,看看这个点击播放出发的url是在哪里

就是这个playAddr,在浏览器中打开最后重定向的地址,就是播放视频的最终地址
分析结束后,我们就可以使用python来实现了。
用requests从分享中解析出来的url发起请求,allow_redirects设置伟True,允许重定向,可以从response中的url参数中获取重定向的地址,否则需要通过response的header中获取location参数
res = requests.get(share_url, allow_redirects=True) print(res.url)拿到重定向的url之后,在发起请求,从返回的源码中获取到playAddr
video_url_res = requests.get(play_url, allow_redirects=False, headers=self.headers) video_url = video_url_res.headers['location'] print(video_url)3. 下载视频
解析出最后的视频地址之后,再发起请求,下载视频,保存本地,并记录下载日志到数据库
self.download_video(video_url, video_desc, uuid) def download_video(self, url, desc, uuid): html = requests.get(url, headers=self.headers) html = html.content with open(Config.get_video_path() uuid '.mp4', 'wb') as f: f.write(html) f.flush() print(desc " download success !")
想要获取源码,请关注 转发,然后发送私信"下载抖音视频"!
制图网(www.makepic.net),专业的logo免费设计在线生成网站,全自动智能化logo设计,商标设计,logo在线生成!
欢迎使用制图网制作属于您公司自己的logo,不仅专业而且经济实惠,全方位满足您公司品牌化、视觉化的需求。
只需简单一步,使用微信扫码(或长按识别二维码)并在任一小程序首页根据提示获取激活码!
chatGPT中文网页版,无需注册,快来体验全网最火爆的人工智能应用!
只需简单一步,使用微信扫码(或长按识别二维码)并在任一小程序首页根据提示获取激活码!
chatGPT中文网页版,无需注册,快来体验全网最火爆的人工智能应用!