Mixcloud: youtube_dl.utils.RegexNotFoundError: Unable to extract title; #11674

Closed
daxboy opened this Issue Jan 11, 2017 · 6 comments

Projects

None yet

6 participants

@daxboy
daxboy commented Jan 11, 2017 edited

Please follow the guide below

  • You will be asked some questions and requested to provide some information, please read them carefully and answer honestly
  • Put an x into all the boxes [ ] relevant to your issue (like that [x])
  • Use Preview tab to see how your issue will actually look like

Make sure you are using the latest version: run youtube-dl --version and ensure your version is 2017.01.10. If it's not read this FAQ entry and update. Issues with outdated version will be rejected.

  • I've verified and I assure that I'm running youtube-dl 2017.01.10

D:\Cap>.\youtube-dl.exe --version
2017.01.10

Before submitting an issue make sure you have:

  • At least skimmed through README and most notably FAQ and BUGS sections
  • Searched the bugtracker for similar issues including closed ones

What is the purpose of your issue?

  • Bug report (encountered problems with youtube-dl)
  • Site support request (request for adding support for a new site)
  • Feature request (request for a new functionality)
  • Question
  • Other

The following sections concretize particular purposed issues, you can erase any section (the contents between triple ---) not applicable to your issue


If the purpose of this issue is a bug report, site support request or you are not completely sure provide the full verbose output as follows:

Add -v flag to your command line you run youtube-dl with, copy the whole output and insert it here. It should look similar to one below (replace it with your log inserted between triple ```):

D:\Cap>.\youtube-dl.exe --verbose "https://www.mixcloud.com/stephanbreuer32/deep-house-vocal-mix-01-2017/"
[debug] System config: []
[debug] User config: []
[debug] Custom config: []
[debug] Command-line args: ['--verbose', 'https://www.mixcloud.com/stephanbreuer32/deep-house-vocal-mix-01-2017/']
[debug] Encodings: locale cp1252, fs mbcs, out cp437, pref cp1252
[debug] youtube-dl version 2017.01.10
[debug] Python version 3.4.4 - Windows-10-10.0.14393
[debug] exe versions: ffmpeg N-74593-g6638e4a, ffprobe N-74593-g6638e4a, rtmpdump 2.4.0-4
[debug] Proxy map: {}
[mixcloud] stephanbreuer32-deep-house-vocal-mix-01-2017: Downloading webpage
ERROR: Unable to extract title; please report this issue on https://yt-dl.org/bug . Make sure you are using the latest version; type  youtube-dl -U  to update. Be sure to call youtube-dl with the --verbose flag and include its complete output.
Traceback (most recent call last):
  File "C:\Users\dst\AppData\Roaming\Build archive\youtube-dl\rg3\tmpu7wtweqp\build\youtube_dl\YoutubeDL.py", line 694, in extract_info
  File "C:\Users\dst\AppData\Roaming\Build archive\youtube-dl\rg3\tmpu7wtweqp\build\youtube_dl\extractor\common.py", line 359, in extract
  File "C:\Users\dst\AppData\Roaming\Build archive\youtube-dl\rg3\tmpu7wtweqp\build\youtube_dl\extractor\mixcloud.py", line 96, in _real_extract
  File "C:\Users\dst\AppData\Roaming\Build archive\youtube-dl\rg3\tmpu7wtweqp\build\youtube_dl\extractor\common.py", line 671, in _html_search_regex
  File "C:\Users\dst\AppData\Roaming\Build archive\youtube-dl\rg3\tmpu7wtweqp\build\youtube_dl\extractor\common.py", line 662, in _search_regex
youtube_dl.utils.RegexNotFoundError: Unable to extract title; please report this issue on https://yt-dl.org/bug . Make sure you are using the latest version; type  youtube-dl -U  to update. Be sure to call youtube-dl with the --verbose flag and include its complete output.
...
<end of log>

Description of your issue, suggested solution and other information

I checked that Mixclloud is supported, and it appears to be. I get a Regex error when I point youtube-dl at that Mixcloud URL.

@hippyTed

Here is a similar report, to confirm the problem.:

'''ted@kora$ ytdl https://www.mixcloud.com/iago-theobald/iago-and-jimbo-psydub-and-deep-trance-bad-people-in-the-woods-nye-2017/

  • [[ 1 -gt 0 ]]
  • youtube-dl --verbose --extract-audio --audio-quality 0 https://www.mixcloud.com/iago-theobald/iago-and-jimbo-psydub-and-deep-trance-bad-people-in-the-woods-nye-2017/
    [debug] System config: []
    [debug] User config: []
    [debug] Custom config: []
    [debug] Command-line args: ['--verbose', '--extract-audio', '--audio-quality', '0', 'https://www.mixcloud.com/iago-theobald/iago-and-jimbo-psydub-and-deep-trance-bad-people-in-the-woods-nye-2017/']
    [debug] Encodings: locale UTF-8, fs utf-8, out UTF-8, pref UTF-8
    [debug] youtube-dl version 2017.01.10
    [debug] Python version 3.4.5 - Linux-4.4.26-gentoo-kora-033-x86_64-Intel-R-_Core-TM-i5-2540M_CPU@_2.60GHz-with-gentoo-2.3
    [debug] exe versions: ffmpeg 2.8.10, ffprobe 2.8.10, rtmpdump 2.4
    [debug] Proxy map: {}
    [mixcloud] iago-theobald-iago-and-jimbo-psydub-and-deep-trance-bad-people-in-the-woods-nye-2017: Downloading webpage
    ERROR: Unable to extract title; please report this issue on https://yt-dl.org/bug . Make sure you are using the latest version; type youtube-dl -U to update. Be sure to call youtube-dl with the --verbose flag and include its complete output.
    Traceback (most recent call last):
    File "/usr/local/bin/youtube-dl/youtube_dl/YoutubeDL.py", line 694, in extract_info
    ie_result = ie.extract(url)
    File "/usr/local/bin/youtube-dl/youtube_dl/extractor/common.py", line 359, in extract
    return self._real_extract(url)
    File "/usr/local/bin/youtube-dl/youtube_dl/extractor/mixcloud.py", line 96, in _real_extract
    PREFIX + r'm-title="([^"]+)"', webpage, 'title')
    File "/usr/local/bin/youtube-dl/youtube_dl/extractor/common.py", line 671, in _html_search_regex
    res = self._search_regex(pattern, string, name, default, fatal, flags, group)
    File "/usr/local/bin/youtube-dl/youtube_dl/extractor/common.py", line 662, in _search_regex
    raise RegexNotFoundError('Unable to extract %s' % _name)
    youtube_dl.utils.RegexNotFoundError: Unable to extract title; please report this issue on https://yt-dl.org/bug . Make sure you are using the latest version; type youtube-dl -U to update. Be sure to call youtube-dl with the --verbose flag and include its complete output.
    '''
@benoon
benoon commented Jan 12, 2017

Same here.

@ata4
ata4 commented Jan 12, 2017 edited

There has been a design update recently, so the parser can't find some patterns in the changed HTML code anymore. It appears to work again when I remove PREFIX from the regex patterns in mixcloud.py, but I can't say if this will break something else.

@JackHack96

I can confirm

@bhrgunatha

They changed the CSS class name of the player to m-play-button.
Changing the PREFIX from m-play-on-spacebar to m-play-button works for me.

    PREFIX = (
        # r'm-play-on-spacebar[^>]+'
        r'm-play-button[^>]+'
        r'(?:\s+[a-zA-Z0-9-]+(?:="[^"]+")?)*?\s+')
@JackHack96

@bhrgunatha It works for me too 👍

@dstftw dstftw added a commit that closed this issue Jan 13, 2017
@dstftw dstftw [mixcloud] Fix extraction (closes #11674) fb6a592
@dstftw dstftw closed this in fb6a592 Jan 13, 2017
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment