Skip to content

plugins.youtube: video_id not found by regexp #3668

@etam

Description

@etam

Plugin Issue

  • This is a plugin issue and I have read the contribution guidelines.
  • I am using the latest development version from the master branch: current master is c7bd7ec

Description

Streamlink fails to get stream url of a live stream. It used to do it fine few days ago.

Reproduction steps / Explicit stream URLs to test

  1. Try to play https://www.youtube.com/c/Urz%C4%85dTransportuKolejowego/live

Log output

> ./bin/streamlink --loglevel debug "https://www.youtube.com/c/Urz%C4%85dTransportuKolejowego/live" 720p --stream-url
Traceback (most recent call last):
  File "./bin/streamlink", line 33, in <module>
    sys.exit(load_entry_point('streamlink==2.1.1+1.gc7bd7ec', 'console_scripts', 'streamlink')())
  File "/home/etam/tmp/streamlink_master/lib64/python3.8/site-packages/streamlink_cli/main.py", line 1075, in main
    handle_url()
  File "/home/etam/tmp/streamlink_master/lib64/python3.8/site-packages/streamlink_cli/main.py", line 566, in handle_url
    streams = fetch_streams(plugin)
  File "/home/etam/tmp/streamlink_master/lib64/python3.8/site-packages/streamlink_cli/main.py", line 459, in fetch_streams
    return plugin.streams(stream_types=args.stream_types,
  File "/home/etam/tmp/streamlink_master/lib64/python3.8/site-packages/streamlink/plugin/plugin.py", line 317, in streams
    ostreams = self._get_streams()
  File "/home/etam/tmp/streamlink_master/lib64/python3.8/site-packages/streamlink/plugins/youtube.py", line 301, in _get_streams
    self.video_id = self._find_video_id(self.url)
  File "/home/etam/tmp/streamlink_master/lib64/python3.8/site-packages/streamlink/plugins/youtube.py", line 262, in _find_video_id
    return self._find_video_id(canon_link)
  File "/home/etam/tmp/streamlink_master/lib64/python3.8/site-packages/streamlink/plugins/youtube.py", line 227, in _find_video_id
    if m.group("video_id"):
AttributeError: 'NoneType' object has no attribute 'group'

Additional comments, etc.

If in

if m.group("video_id"):

I change it to

if m and m.group("video_id"):

I get

error: Unable to open URL: https://consent.youtube.com/m (400 Client Error: Bad Request for url: https://consent.youtube.com/m)

Metadata

Metadata

Assignees

No one assigned

    Labels

    plugin issueA Plugin does not work correctly

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions