How to use youtube-dl from a python program
Question: I would like to access the result of the shell command:

    
    
    youtube-dl -g "www.youtube.com..."
    

to print its output `direct url` to file; from within a python program:

    
    
    import youtube-dl
    fromurl="www.youtube.com ...."
    geturl=youtube-dl.magiclyextracturlfromurl(fromurl)
    

Is that possible ? I tried to understand the mechanism in the source but got
lost : `youtube_dl/__init__.py`, `youtube_dl/youtube_DL.py`, `info_extractors`
...


Answer: It's not difficult and [actually documented](https://github.com/rg3/youtube-
dl/blob/master/README.md#embedding-youtube-dl):

    
    
    import youtube_dl
    
    ydl = youtube_dl.YoutubeDL({'outtmpl': '%(id)s%(ext)s'})
    
    with ydl:
        result = ydl.extract_info(
            'http://www.youtube.com/watch?v=BaW_jenozKc',
            download=False # We just want to extract the info
        )
    
    if 'entries' in result:
        # Can be a playlist or a list of videos
        video = result['entries'][0]
    else:
        # Just a video
        video = result
    
    print(video)
    video_url = video['url']
    print(video_url)
    

