在python中的类方法中打印不起作用

时间:2018-10-19 12:23:34

标签: python youtube-dl

我正尝试学习如何从this website向youtube dl中的新网站添加支持 我修改了它,因为网站已经过时。以下是我的代码

from .common import InfoExtractor

class VineIE(InfoExtractor):
    _VALID_URL = r'(?:https?://)?(?:www\.)?vine\.co/v/(?P<id>\w+)'

    def _real_extract(self, url):
        video_id = self._match_id(url)
        webpage = self._download_webpage(url, video_id)
        print(webpage)
        return []

我的目的是调试和打印变量并查看发生了什么。所以我尝试运行它

python -m youtube_dl vine.co/v/b9KOOWX7HUx

但是,我在控制台中没有得到webpage变量。相反,我得到的是什么?

[generic] b9KOOWX7HUx: Requesting header
WARNING: Falling back on generic information extractor.
[generic] b9KOOWX7HUx: Downloading webpage
[generic] b9KOOWX7HUx: Extracting information
ERROR: Unsupported URL: http://www.vine.co/v/b9KOOWX7HUx

为什么打印功能不起作用?

2 个答案:

答案 0 :(得分:1)

youtube-dl已经有一个VineIE。您应该编辑该提取器,而不要编写一个新的提取器。

无论如何,您的代码很可能不会执行。在extractors.py中,通过添加

from vine import VineIE

同样,请注意,您的实际提取器不能称为VineIE,因为这样的提取器已经存在。

有关如何创建提取器的更多信息,请遵循official documentation on how to create a youtube-dl extractor

答案 1 :(得分:-1)

webpage = self._download_webpage(url, video_id)

似乎失败了,您可以发布该功能吗?