python-3.x - 即使使用安静选项,Python3 YoutubeDL 也会显示输出
问题描述
说我有一个脚本,如下
import youtube_dl
options = {
"quiet": True,
"skip_download": True,
"forcetitle": True,
"forceurl": True,
"format": "bestaudio[ext=m4a]/best[ext=mp4]/best[ext=webm]/best"}
with youtube_dl.YoutubeDL(options) as ydl:
metadata = ydl.extract_info(f"ytsearch1: Never gonna give you up Rick Astley")
title = metadata["entries"][0]["title"]
url = metadata["entries"][0]["formats"][0]["url"]
watch_id = metadata["entries"][0]["display_id"]
extension = metadata["entries"][0]["ext"]
print("\n")
print("Results")
print(f"title: {title}")
print(f"url: {url}")
# do other stuff
此输出显示以下内容
Rick Astley - Never Gonna Give You Up (Video)
https://r2---sn-nqojvhh-4nql.googlevideo.com/videoplayback?expire=1615178090&ei=ClVFYLXAB_Wmir4P4OmvsAc&ip=142.0.14.91&id=o-AI7PyUbW58VrMxM9IFNqTlw2BbD8mwMoV53-wSMcs_mb&itag=140&source=youtube&requiressl=yes&mh=7c&mm=31%2C29&mn=sn-nqojvhh-4nql%2Csn-qxoedn7z&ms=au%2Crdu&mv=m&mvi=2&pcm2cms=yes&pl=20&gcr=us&initcwndbps=1832500&vprv=1&mime=audio%2Fmp4&ns=1H8LUy6hbPlWLg1PHgmu0xUF&gir=yes&clen=3433514&dur=212.091&lmt=1608803698687376&mt=1615156117&fvip=4&keepalive=yes&fexp=24001374%2C24007246&c=WEB&txp=5411222&n=Bh0GIV8cVRIBUneuBU&sparams=expire%2Cei%2Cip%2Cid%2Citag%2Csource%2Crequiressl%2Cgcr%2Cvprv%2Cmime%2Cns%2Cgir%2Cclen%2Cdur%2Clmt&lsparams=mh%2Cmm%2Cmn%2Cms%2Cmv%2Cmvi%2Cpcm2cms%2Cpl%2Cinitcwndbps&lsig=AG3C_xAwRQIgYpoaNgPdxLh4inaXa9CrRiDglT_DKUS3uEn4Qku-uVwCIQD6nELqExsGMNZQoRqEpnU669WCHXqCfM35K-TfQtrqHw%3D%3D&sig=AOq0QJ8wRgIhAOtlhCnk7UdstxOQBiTZ29aK4EYyjKwXcf4hmGwxiBBOAiEA0bTm2mBy5Z41KKdYXCgWZbZ0S-S8jUaxyA4JXwYjG6g=
Results
title: Rick Astley - Never Gonna Give You Up (Video)
url: https://r2---sn-nqojvhh-4nql.googlevideo.com/videoplayback?expire=1615178090&ei=ClVFYLXAB_Wmir4P4OmvsAc&ip=142.0.14.91&id=o-AI7PyUbW58VrMxM9IFNqTlw2BbD8mwMoV53-wSMcs_mb&itag=249&source=youtube&requiressl=yes&mh=7c&mm=31%2C29&mn=sn-nqojvhh-4nql%2Csn-qxoedn7z&ms=au%2Crdu&mv=m&mvi=2&pcm2cms=yes&pl=20&gcr=us&initcwndbps=1832500&vprv=1&mime=audio%2Fwebm&ns=1H8LUy6hbPlWLg1PHgmu0xUF&gir=yes&clen=1232526&dur=212.061&lmt=1578935068173432&mt=1615156117&fvip=4&keepalive=yes&fexp=24001374%2C24007246&c=WEB&txp=5531432&n=Bh0GIV8cVRIBUneuBU&sparams=expire%2Cei%2Cip%2Cid%2Citag%2Csource%2Crequiressl%2Cgcr%2Cvprv%2Cmime%2Cns%2Cgir%2Cclen%2Cdur%2Clmt&lsparams=mh%2Cmm%2Cmn%2Cms%2Cmv%2Cmvi%2Cpcm2cms%2Cpl%2Cinitcwndbps&lsig=AG3C_xAwRAIgbLq604Q9G-SMe7ukgbbvLk3Fnml4eSYmuTxC37fCNUoCIHWnPYA70q5nZiDY0OgDbZHqTFIkjtLZBPJqV4i5bFXa&sig=AOq0QJ8wRQIgP1Nj9IqPpv4qVbPGf6edCJMipGq3pralKXL7ypBANGICIQDAjnJ8QTio0kl11edjg4Pk1ZzLfm-YOE2hJFPnQiUnbQ==
通过传入"quiet": True
,ydl.extract_info
我想我可以抑制所有输出。虽然这确实抑制了大多数输出,但我不想显示任何输出。
如何抑制所有输出ydl.extract_info
?
谢谢你的帮助!
解决方案
这是一个小小的临时工,只需要 import os 并在最后一行写上 os.sys(“cls”) 或 os.system(“cls”)
推荐阅读
- javascript - failed to set the 'value' property on 'HTMLInputElement' in reactive form
- spring-boot - 通过在运行时传递序列按顺序运行服务的 Spring Boot 应用程序
- python - 三维数组作为向量和矩阵的乘法
- azure - azure api管理:有没有办法在入站策略中获取操作名称
- android - 如果 APK 已签名,Google Drive REST API AppDataFolder 不起作用
- css - 如何修复我的 .woff 网络字体以显示在我们的网站上?
- python - Pony ORM 实体单向映射给出错误
- swift - 使用构建/编译器变量在构建时传递 IP,而不创建构建工件
- ios - 在应用程序之间共享核心数据
- php - PHP 检查一个 ID 是否与活动 ID 相关联