首页 > 编程语言 >Python | 开源项目you-get的下载和使用

Python | 开源项目you-get的下载和使用

时间:2023-08-04 12:32:08浏览次数:187  
标签:www http get Python format -- 开源 com

安装

前提条件

建议使用以下依赖项:

$ python
Python 3.9.11 (tags/v3.9.11:2de452f, Mar 16 2022, 14:33:45) [MSC v.1929 64 bit (AMD64)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>> exit()

通过 pip 安装

正式版本you-get分布在PyPI上,可以通过pip包管理器从 PyPI 镜像轻松安装。请注意,您必须使用 Python 3 版本pip

$ pip install you-get
Looking in indexes: https://pypi.tuna.tsinghua.edu.cn/simple
Requirement already satisfied: you-get in d:\software\development\python\python39\lib\site-packages (0.4.1620)

升级

根据您选择安装的选项you-get,您可以通过以下方式对其进行升级:

$ pip3 install --upgrade you-get

入门

常用选项命令

选项

说明

-i

显示资源信息,比如说格式、清晰度、大小等

-u

指定下载或查看的url,有时候可以省略-u直接加上url

-o

设置输出文件夹,即保存路径,若不指定,则保存在当前工作目录

-O

设置文件名,可采用默认文件名

-f

强制覆盖已存在的文件

-l

优先下载整个列表

-P

使用密码(若访问视频需要密码)

-t

设置超时时间,单位是秒

-c

使用cookie,加载cookies.txt 或者cookies.sqlite

下载视频

当您获得感兴趣的视频时,您可能希望使用--info/-i选项查看所有可用的质量和格式:

$ you-get -i https://www.bilibili.com/video/BV1yT411L7dZ
site:                Bilibili
title:               李白:你这蜀道太假了!超级蜀道,如何改变四川?【星球4K】《超级风景 超级工程》S02E04
streams:             # Available quality and codecs
    [ DASH ] ____________________________________
    - format:        dash-flv
      container:     mp4
      quality:       高清 1080P
      size:          224.2 MiB (235098681 bytes)
    # download-with: you-get --format=dash-flv [URL]

    - format:        dash-flv720
      container:     mp4
      quality:       高清 720P
      size:          120.2 MiB (126057779 bytes)
    # download-with: you-get --format=dash-flv720 [URL]

    - format:        dash-flv480
      container:     mp4
      quality:       清晰 480P
      size:          79.7 MiB (83553841 bytes)
    # download-with: you-get --format=dash-flv480 [URL]

    - format:        dash-flv360
      container:     mp4
      quality:       流畅 360P
      size:          43.0 MiB (45039584 bytes)
    # download-with: you-get --format=dash-flv360 [URL]

    [ DEFAULT ] _________________________________
    - format:        flv
      container:     flv
      quality:       高清 1080P
      size:          301.9 MiB (316600250 bytes)
    # download-with: you-get --format=flv [URL]

    - format:        flv720
      container:     flv
      quality:       高清 720P
      size:          212.1 MiB (222401583 bytes)
    # download-with: you-get --format=flv720 [URL]

    - format:        flv480
      container:     flv
      quality:       清晰 480P
      size:          95.0 MiB (99594194 bytes)
    # download-with: you-get --format=flv480 [URL]

    - format:        flv360
      container:     flv
      quality:       流畅 360P
      size:          43.2 MiB (45315454 bytes)
    # download-with: you-get --format=flv360 [URL]

在未指定格式的情况下,下载的默认格式是质量最高的格式。

(如果 BliBli视频有任何隐藏字幕,它们将与视频文件一起以 xml字幕格式下载。)

或者,如果您更喜欢其他格式 (mp4),只需使用选项you-get显示给您的任何内容:

$ you-get --format=dash-flv https://www.bilibili.com/video/BV1yT411L7dZ
site:                Bilibili
title:               李白:你这蜀道太假了!超级蜀道,如何改变四川?【星球4K】《超级风景 超级工程》S02E04
stream:
    - format:        dash-flv
      container:     mp4
      quality:       高清 1080P
      size:          224.2 MiB (235098681 bytes)
    # download-with: you-get --format=dash-flv [URL]

Downloading 李白:你这蜀道太假了!超级蜀道,如何改变四川?【星球4K】《超级风景 超级工程》S02E04.mp4 ...
 100% (224.2/224.2MB) ├████████████████████████████████████████┤[2/2]    7 MB/s

Downloading 李白:你这蜀道太假了!超级蜀道,如何改变四川?【星球4K】《超级风景 超级工程》S02E04.cmt.xml ...

Python | 开源项目you-get的下载和使用_ide

MP4格式,音频和视频会被分成两个单独文件,而flv格式就只有一个音视混合的文件。其它网站可自行测试

笔记:

  • 目前,支持的大多数站点还没有普遍实现格式选择;在这种情况下,要下载的默认格式是质量最高的格式。
  • ffmpeg是一个必需的依赖项,用于下载和加入多部分流式传输的视频(例如在优酷等网站上),以及 1080p 或高分辨率的 YouTube 视频。
  • 如果您不想you-get在下载后加入视频部分,请使用--no-merge/-n选项。

下载歌曲

例如:网易云音乐的歌曲

Python | 开源项目you-get的下载和使用_python_02

$ you-get -O 满眼繁华 https://music.163.com/#/song?id=1889103238
Site:       163.com
Title:      0. 满眼繁华
Type:       Unknown type (None)
Size:       3.92 MiB (4110381 Bytes)

Downloading 满眼繁华.mp3 ...
 100% (  3.9/  3.9MB) ├████████████████████████████████████████┤[1/1]    5 MB/s

Saving 0. 满眼繁华.lrc ...Done.

Python | 开源项目you-get的下载和使用_下载文件_03


一个是音频文件,一个是歌词文件

下载其他任何东西

如果你已经有了你想要的确切资源的 URL,你可以直接下载它:

Python | 开源项目you-get的下载和使用_ide_04

$ you-get https://w.wallhaven.cc/full/y8/wallhaven-y8622k.jpg
Site:       wallhaven.cc
Title:      wallhaven-y8622k
Type:       JPEG Image (image/jpeg)
Size:       1.18 MiB (1232268 Bytes)

Downloading wallhaven-y8622k.jpg ...
 100% (  1.2/  1.2MB) ├████████████████████████████████████████┤[1/1]  539 kB/s

Python | 开源项目you-get的下载和使用_下载文件_05


否则,you-get将抓取网页并尝试找出您是否感兴趣

笔记:

  • 此功能是一项实验性功能,远非完美。它最适合从 Tumblr 和 Blogger 等流行网站上抓取大尺寸图片,但实际上没有通用模式可以应用于 Internet 上的任何网站。

暂停和恢复下载

您可以使用Ctrl+C来中断下载。

临时.download文件保存在输出目录中。下次您you-get使用相同的参数运行时,下载进度将从上次会话恢复。如果文件完全下载(临时.download扩展名消失),you-get将跳过下载。

要强制重新下载,请使用--force/-f选项。(警告:这样做会覆盖任何现有文件或同名临时文件!)

设置下载文件的路径和名称

使用--output-dir/-o选项设置路径,使用--output-filename/-O设置下载文件的名称:

$ you-get -o ~/Videos -O 超级蜀道,如何改变四川? 'you-get --format=dash-flv https://www.bilibili.com/video/BV1yT411L7dZ'

提示:

  • 如果您遇到与默认视频标题有关的问题,这些选项会很有帮助,因为默认视频标题可能包含与您当前的外壳/操作系统/文件系统无法正常播放的特殊字符。
  • 如果您编写脚本以批量下载文件并将它们放入具有指定名称的指定文件夹中,这些选项也很有帮助。

代理设置

you-get您可以通过--http-proxy/-x选项指定要使用的 HTTP 代理:

$ you-get -x 127.0.0.1:8087 'https://www.bilibili.com/video/BV1yT411L7dZ'

http_proxy但是,默认情况下会应用系统代理设置(即环境变量)。要禁用任何代理,请使用该--no-proxy选项。

提示:

  • 如果您需要大量使用代理(以防您的网络阻止某些站点),您可能希望使用you-get代理并设置alias you-get="proxychains -q you-get"(在 Bash 中)。
  • 对于某些网站(如优酷),如果您需要访问某些仅在中国大陆地区可用的视频,可以选择使用特定代理从网站中提取视频信息:--extractor-proxy/ -y

加载 cookie

并非所有视频都对任何人公开。如果您需要登录您的帐户来访问某些内容(例如,私人视频),则不可避免地you-get通过--cookies/-c选项将浏览器 cookie 提供给浏览器。

笔记:

  • 截至目前,我们支持两种格式的浏览器 cookie:Mozillacookies.sqlite和 Netscape cookies.txt

重用提取的数据

使用--url/-u获取从页面中提取的可下载资源 URL 列表。用于--json以 JSON 格式获取提取数据的摘要。

警告:

  • 目前,此功能尚未稳定,JSON 模式将来可能会发生重大变化。

支持的站点

Site

URL

Videos?

Images?

Audios?

YouTube

https://www.youtube.com/


Twitter

https://twitter.com/



VK

http://vk.com/



Vine

https://vine.co/


Vimeo

https://vimeo.com/


Veoh

http://www.veoh.com/


Tumblr

https://www.tumblr.com/




TED

http://www.ted.com/


SoundCloud

https://soundcloud.com/


SHOWROOM

https://www.showroom-live.com/


Pinterest

https://www.pinterest.com/


MTV81

http://www.mtv81.com/


Mixcloud

https://www.mixcloud.com/


Metacafe

http://www.metacafe.com/


Magisto

http://www.magisto.com/


Khan Academy

https://www.khanacademy.org/


Internet Archive

https://archive.org/


Instagram

https://instagram.com/



InfoQ


Imgur

http://imgur.com/


Heavy Music Archive

http://www.heavy-music.ru/


Freesound

http://www.freesound.org/


Flickr

https://www.flickr.com/



FC2 Video

http://video.fc2.com/


Facebook

https://www.facebook.com/


eHow

http://www.ehow.com/


Dailymotion

http://www.dailymotion.com/


Coub

http://coub.com/


CBS

http://www.cbs.com/


Bandcamp

http://bandcamp.com/


AliveThai

http://alive.in.th/


interest.me

http://ch.interest.me/tvn


755 ナナゴーゴー

http://7gogo.jp/



niconico ニコニコ動画

http://www.nicovideo.jp/


163 网易视频 网易云音乐

http://v.163.com/ http://music.163.com/



56网

http://www.56.com/


AcFun

http://www.acfun.cn/


Baidu 百度贴吧

http://tieba.baidu.com/



爆米花网

http://www.baomihua.com/


bilibili 哔哩哔哩

http://www.bilibili.com/




豆瓣

http://www.douban.com/



斗鱼

http://www.douyutv.com/


凤凰视频

http://v.ifeng.com/


风行网

http://www.fun.tv/


iQIYI 爱奇艺

http://www.iqiyi.com/


激动网

http://www.joy.cn/


酷6网

http://www.ku6.com/


酷狗音乐

http://www.kugou.com/


酷我音乐

http://www.kuwo.cn/


乐视网

http://www.le.com/


荔枝FM

http://www.lizhi.fm/


懒人听书

http://www.lrts.me/


秒拍

http://www.miaopai.com/


MioMio弹幕网

http://www.miomio.tv/


MissEvan 猫耳FM

http://www.missevan.com/


痞客邦

https://www.pixnet.net/


PPTV聚力

http://www.pptv.com/


齐鲁网

http://v.iqilu.com/


QQ 腾讯视频

http://v.qq.com/


企鹅直播

http://live.qq.com/


Sina 新浪视频 微博秒拍视频

http://video.sina.com.cn/ http://video.weibo.com/


Sohu 搜狐视频

http://tv.sohu.com/


Tudou 土豆

http://www.tudou.com/


阳光卫视

http://www.isuntv.com/


Youku 优酷

http://www.youku.com/


战旗TV

http://www.zhanqi.tv/lives


央视网

http://www.cntv.cn/


Naver 네이버

http://tvcast.naver.com/


芒果TV

http://www.mgtv.com/


火猫TV

http://www.huomao.com/


阳光宽频网

http://www.365yg.com/


西瓜视频

https://www.ixigua.com/


新片场

https://www.xinpianchang.com/


快手

https://www.kuaishou.com/



抖音

https://www.douyin.com/


TikTok

https://www.tiktok.com/


中国体育(TV)

http://v.zhibo.tv/ http://video.zhibo.tv/


知乎

https://www.zhihu.com/


对于不在列表中的所有其他站点,通用提取器将负责从页面中查找和下载有趣的资源。

箴言:因为这些东西是非常简单的。不要抱怨自己学不会,那是因为你没有足够用心。



标签:www,http,get,Python,format,--,开源,com
From: https://blog.51cto.com/echohye/6959910

相关文章

  • python--compile、exec、eval函数使用
    compile(source,filename,mode,flags=0,dont_inherit=False,optimize=-1)参数说明:source:字符串或AST对象,表示需要进行编译的python代码filename:指定需要编译的代码文件,如果不是文件读取代码则传递一些可辨认的值.mode:用于标识必须当做那类代表来编译;(如果source是......
  • 基于C#的应用程序单例唯一运行的完美解决方案 - 开源研究系列文章
    今次介绍一个应用程序单例唯一运行方案的代码。我们知道,有些应用程序在操作系统中需要单例唯一运行,因为程序多开的话会对程序运行效果有影响,最基本的例子就是打印机,只能运行一个实例。这里将笔者单例运行的代码共享出来,需要的读者请自己复用该代码到自己的项目中即可。......
  • python调用RabbitMQ
    本文不涉及较难的操作,仅仅提供常用的生产消息和消费消息的方式。--好像也没啥花里胡哨的操作1、准备想要python调用rabbitMQ需要安装pika,所有需要提前安装好pika包#全局pipinstallpika;#如果用的anaconda的上面那个装不上可以试试这个?condainstallpika;2、代......
  • python 操作oracle
    表DDL--"C##TAPDATA_TEST".ALAM3definitionCREATETABLE"C##TAPDATA_TEST"."ALAM3"( "UID1"VARCHAR2(100)NOTNULLENABLE, "UID2"VARCHAR2(100)NOTNULLENABLE, "COLUMN1"VARCHAR2(100),......
  • String requestUrl = StringUtils.replaceOnce(this.getRequestURI(), this.getContex
    当使用该行代码处理以下请求时:请求URL:http://example.com/myapp/products/details上下文路径(ContextPath):/myapp代码将执行以下操作:this.getRequestURI()返回"/myapp/products/details"。this.getContextPath()返回"/myapp"。StringUtils.replaceOnce("/myapp/products......
  • 希尔排序的Python实现,并逐行解释代码
    当然,我可以为您提供希尔排序的Python实现,并逐行解释代码。以下是一个示例:defshell_sort(arr):n=len(arr)gap=n//2#初始化间隔whilegap>0:foriinrange(gap,n):temp=arr[i]j=i#对间隔为gap......
  • Python爬虫遇到重定向问题解决办法汇总
    在进行Python爬虫任务时,遇到重定向问题是常见的问题之一。重定向是指在发送请求时,服务器会返回一个新的URL,将请求重新定向到该URL。为了帮助您解决这个问题,本文将提供一些实用的解决办法,并给出相关的代码示例,希望能对您的爬虫任务有所帮助。了解重定向问题重定向问题通常是由于网......
  • python教程 入门学习笔记 第6天 数据类型转换 字符串转换成数值 数值之间互转 其它类
    4、数据类型转换1)字符串转换成数值:int()-----------将值转换成整数float()-----------将值转换成小数str()-----------将值转换成字符串bool()-----------将值转换成布尔值例如:int()将值转换成整数s1="188"#字符串ns1=int(s1)#转换成整型数值print(ns1+8)#打印数......
  • 配置pytorch环境时出现的问题 Failed to load image Python extension
    安装了torch1.12.0+torchvision0.13.0+torchaudio0.12.0版本后,condainstallpytorch==1.12.0torchvision==0.13.0torchaudio==0.12.0cudatoolkit=11.3-cpytorch按照《动手学深度学习》输入 fromd2limporttorchasd2l命令,跳出警告UserWarning:Failed......
  • 100道Python练习题
    100道Python练习题,希望对你的学习有所帮助!编写一个程序,输入两个数并计算它们的和。编写一个程序,输入一个字符串,并倒序输出该字符串。编写一个程序,判断一个数是否为质数。编写一个程序,计算并输出斐波那契数列的前n项(n由用户输入)。编写一个程序,判断一个字符串是否为回文串。编写一个......