1
0
mirror of https://github.com/l1ving/youtube-dl synced 2025-03-15 18:47:15 +08:00
youtube-dl/devscripts/make_supportedsites.py
Matthieu Muffato 5678b4c821 Made the generation of supported sites repeatable
sorted() was not called on the string that's actually printed, but on its
prefix, resulting in some strings being printed in a random order.
This commit makes the sorting repeatable.
2016-06-26 21:51:19 +01:00

46 lines
1.1 KiB
Python

#!/usr/bin/env python
from __future__ import unicode_literals
import io
import optparse
import os
import sys
# Import youtube_dl
ROOT_DIR = os.path.join(os.path.dirname(__file__), '..')
sys.path.insert(0, ROOT_DIR)
import youtube_dl
def main():
parser = optparse.OptionParser(usage='%prog OUTFILE.md')
options, args = parser.parse_args()
if len(args) != 1:
parser.error('Expected an output filename')
outfile, = args
def gen_ies_md(ies):
for ie in ies:
ie_md = '**{0}**'.format(ie.IE_NAME)
ie_desc = getattr(ie, 'IE_DESC', None)
if ie_desc is False:
continue
if ie_desc is not None:
ie_md += ': {0}'.format(ie.IE_DESC)
if not ie.working():
ie_md += ' (Currently broken)'
yield ie_md
ies = sorted(gen_ies_md(youtube_dl.gen_extractors()), key=lambda s: s.lower())
out = '# Supported sites\n' + ''.join(
' - ' + md + '\n'
for md in ies)
with io.open(outfile, 'w', encoding='utf-8') as outf:
outf.write(out)
if __name__ == '__main__':
main()