美文网首页python学习
用Python下载知乎视频,非常实用

用Python下载知乎视频,非常实用

作者: Python学习 | 来源:发表于2018-05-15 14:54 被阅读15次

Python下载知乎视频。

# -*- coding: utf-8 -*-

"""

下载知乎视频:

依赖:

pip install requests

mac 安装 ffmpeg:

brew install ffmpeg

"""

import re

import uuid

import subprocess

import requests

# 下边 cookie 请打开知乎打开浏览器开发者工具随便找一个请求复制 cookie,千万不要泄露出去

HEADERS = {

'cookie': '' # TODO

}

QUALITY = 'ld' # 支持是 'ld' 'sd' 'hd' 分别是低清、中清、高清

def get_video_ids_from_url(url):

"""

回答或者文章的 url

"""

html = requests.get(url, headers=HEADERS).text

video_ids = re.findall(r'data-lens-id="(\d+)"', html)

if video_ids:

return set([int(video_id) for video_id in video_ids])

return []

def yield_video_m3u8_url_from_video_ids(video_ids):

for video_id in video_ids:

api_video_url = 'https://lens.zhihu.com/api/videos/{}'.format(int(video_id))

r = requests.get(api_video_url, headers=HEADERS)

playlist = r.json()['playlist']

m3u8_url = playlist[QUALITY]['play_url']

yield m3u8_url

def download(url):

video_ids = get_video_ids_from_url(url)

m3u8_list = list(yield_video_m3u8_url_from_video_ids(video_ids))

filename = '{}.mp4'.format(uuid.uuid4())

for idx, m3u8_url in enumerate(m3u8_list):

print('download {}'.format(m3u8_url))

subprocess.call(['ffmpeg', '-i', m3u8_url, filename.format(str(idx))])

if __name__ == '__main__':

# 贴上你需要下载的 回答或者文章的链接

url = '--------'

download(url)

"""

下载知乎视频:

依赖:

"""

import re

}

"""

"""

return []

这里还是要推荐下小编的Python学习裙:【五 八 八,零 九 零,九 四 二】不管你是小白还是大牛,小编我都欢迎,不定期分享干货,包括小编自己整理的一份2018最新的Python资料和0基础入门教程,欢迎初学和进阶中的小伙伴。在不忙的时间我会给大家解惑。

相关文章

  • 用Python下载知乎视频,非常实用

    Python下载知乎视频。 # -*- coding: utf-8 -*- """ 下载知乎视频: 依赖: pip...

  • Python爬虫下载知乎视频

    开发工具 Python版本:3.6.4 相关模块: PIL模块; requests模块; click模块; 以及一...

  • jupyter note

    最近在知乎看到了一些非常实用的实用jupyter的笔记了,关于魔法命令注意这些命令是在Python kernel中...

  • 《动手学习 Python》 视频课程

    《动手学习 Python》 视频课程上线了! 可以直接访问知乎专栏:动手学习 Python - 知乎 (zhihu...

  • 如何下载知乎视频

    现在很多答主都开始用视频来答题了,并且还有专门的征集视频的问题。有些视频我觉得特别可爱,比如这个回答里的小猫咪: ...

  • 怎么下载知乎视频

    电脑版用浏览器自带开发者工具 1、右键「检查」,找到视频对应的链接 2、复制到新窗口打开,再次右键「检查」,这个v...

  • python pip设置国内源

    参考链接:知乎,【Python pip 下载速度慢? Windows 设置 国内源,用 阿里云 国内镜像 加速】,...

  • 你认识you-get吗?

    you-get是python的一个非常实用的模块,其便利的下载"各个网站"视频功能让很多的程序员非常喜爱。 今天我...

  • 知乎上视频怎么下载

    其实只需要一个谷歌浏览器(火狐的操作方法一样)就可以,无需任何插件,也不需要去关注微信公众号。 任何谷歌浏览器内核...

  • 教你一键下载无水印视频!

    在知乎上看见好的视频想要保存?Instagram上看见美图想要下载?twitter视频下载不了?YouTube视频...

网友评论

    本文标题:用Python下载知乎视频,非常实用

    本文链接:https://www.haomeiwen.com/subject/rraedftx.html