【问题标题】:Uploading a video with YouTube Data API使用 YouTube 数据 API 上传视频
【发布时间】:2016-02-24 11:25:01
【问题描述】:

这段代码中 Python 2 和 Python 3 有什么不同吗?

if __name__ == '__main__':
    argparser.add_argument("--file", required=True, help="Video file to upload")
    argparser.add_argument("--title", help="Video title", default="Test Title")
    argparser.add_argument("--description", help="Video description",
                           default="Test Description")
    argparser.add_argument("--category", default="22",
                           help="Numeric video category. " +
                           "See https://developers.google.com/youtube/v3/docs/videoCategories/list")
    argparser.add_argument("--keywords", help="Video keywords, comma separated",
                           default="")
    argparser.add_argument("--privacyStatus", choices=VALID_PRIVACY_STATUSES,
                           default=VALID_PRIVACY_STATUSES[0], help="Video privacy status.")
    args = argparser.parse_args()

运行程序时我得到:

error: the following arguments are required: --file

【问题讨论】:

  • 不,在 py 2.x 和 py3k 上相同。但是错误信息已经很清楚了:--file 参数是必需的,并且您没有在命令行中指定它。但是,恕我直言,这是非常愚蠢的 CLI 设计。为什么要为 required 参数使用长选项(此外,无论如何只有一个必需参数)?只需使用位置参数。
  • 我使用了来自谷歌developers.google.com/youtube/v3/guides/uploading_a_video的源代码
  • 愚蠢的 CLI 设计,不管是不是官方的。
  • --file 的名字并不长。脚本需要知道它应该上传什么视频文件的一种或其他方式。
  • @4ae1e1 - 在本示例中使用必需的标记参数使其与本指南中的其他示例保持一致。 --file 并不总是必需的。仅仅因为在这种情况下需要它而将其更改为“位置”会更加混乱。

标签: python api python-3.x youtube-api argparse


【解决方案1】:

Py2 和 Py3 在此脚本中的行为相同。错误消息可能会有所不同,具体取决于版本。

错误消息实际上与此设置相呼应:

"--file", required=True
error: the following arguments are required: --file

你怎么称呼这个脚本?

【讨论】:

  • 我称之为 YouTube.py
  • 这是一个命令行脚本。它不是带有提示或窗口的交互式程序。您必须在命令行中指定视频文件名。否则它无法为您做任何有用的事情。
  • 这些 Python 脚本旨在从终端窗口运行(在 CMD 或 power shell 的窗口中)。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2017-06-14
  • 1970-01-01
  • 2020-06-29
  • 2015-11-19
  • 2014-05-25
  • 1970-01-01
相关资源
最近更新 更多