Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[CBSSports] Extractor and URL regex are broken #16217

Closed
sa7mon opened this issue Apr 19, 2018 · 0 comments
Closed

[CBSSports] Extractor and URL regex are broken #16217

sa7mon opened this issue Apr 19, 2018 · 0 comments

Comments

@sa7mon
Copy link
Contributor

@sa7mon sa7mon commented Apr 19, 2018

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 this: [x])
  • Use the Preview tab to see what your issue will actually look like

Make sure you are using the latest version: run youtube-dl --version and ensure your version is 2018.04.16. 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 2018.04.16

Before submitting an issue make sure you have:

  • At least skimmed through the README, most notably the FAQ and BUGS sections
  • Searched the bugtracker for similar issues including closed ones
  • Checked that provided video/audio/playlist URLs (if any) are alive and playable in a browser

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 CBS Sports extractor is currently out-of-date and is not working. The site has changed the video page URL scheme and also the video platform they're using.

Quickly scanning the available pages, it seems like they all fit this (escaped) regex pattern

https:\/\/www.cbssports.com\/(?:fantasy\/)?(baseball|nfl|mlb|golf|wwe|nba|soccer|college-basketball|college-football|mma)\/news\/([a-zA-Z0-9-]*)

Using this video as an example

https://www.cbssports.com/nfl/news/darrelle-revis-done-in-nfl-chiefs-dump-cornerback-after-less-than-one-season/

the video data comes from

https://cbssportspmd-a.akamaihd.net/idevices/CBS_Production_Sports/2018/02/02/1152554051693/020218_Rome_PatrickMahomes_1494567_1800/020218_Rome_PatrickMahomes_1494567_1800.m3u8

and the video information come from this request:

GET https://www.cbssports.com/data/video/player/getVideos/1_6/?cargs=eJxLLLbNKs7PU0vOSMzLS82Jz8ksLrHNS8tRy8nMzSyxNTVQS80rsy0oyk8BAFYXD6s%3D&CACHE_GD=1&CACHE_1152646211524=642595037007

This request yields the following:

[
  {
    "event_id": "",
    "hd720p_thumbnail": "https://sportshub.cbsistatic.com/api/content/image/563d7a98-6218-4314-b8d7-98a697f8e505/resize/1280x720.jpg",
    "is_player_news": 0,
    "end_time": 1567243020,
    "episode_title": "",
    "suppress_ads": 0,
    "is_featured": 0,
    "seoname": "the-jim-rome-show-patrick-mahomes-talks-chiefs-football",
    "pcid": 1152646211524,
    "hd1080p_thumbnail": "https://sportshub.cbsistatic.com/api/content/image/563d7a98-6218-4314-b8d7-98a697f8e505/resize/1920x1080.jpg",
    "live_midroll_url": "",
    "small_thumbnail": "https://sportshub.cbsistatic.com/api/content/image/563d7a98-6218-4314-b8d7-98a697f8e505/resize/160x90.jpg",
    "start_time": 1517860971,
    "duration": "1:53",
    "description": "Kansas City Chiefs quarterback Patrick Mahomes joins Jim Rome to discuss the Alex Smith trade, and becoming a starting quarterback.",
    "annotations": [],
    "is_game_preview": 0,
    "sources": {
      "MP4": {
        "OTT": "https://cbssportsmp4-a.akamaihd.net/CBS_Production_Outlet_VMS/video_robot/CBS_Production_Sports_VMS/2018/02/02/1152554051693/020218_Rome_PatrickMahomes_1494566_440.mp4",
        "TABLET": "https://cbssportsmp4-a.akamaihd.net/CBS_Production_Outlet_VMS/video_robot/CBS_Production_Sports_VMS/2018/02/02/1152554051693/020218_Rome_PatrickMahomes_1494566_440.mp4",
        "DESKTOP": "https://cbssportsmp4-a.akamaihd.net/CBS_Production_Outlet_VMS/video_robot/CBS_Production_Sports_VMS/2018/02/02/1152554051693/020218_Rome_PatrickMahomes_1494566_440.mp4",
        "PHONE": "https://cbssportsmp4-a.akamaihd.net/CBS_Production_Outlet_VMS/video_robot/CBS_Production_Sports_VMS/2018/02/02/1152554051693/020218_Rome_PatrickMahomes_1494566_150.mp4"
      },
      "HLS": {
        "OTT": "https://cbssportspmd-a.akamaihd.net/idevices/CBS_Production_Sports/2018/02/02/1152554051693/020218_Rome_PatrickMahomes_1494567_ott.m3u8",
        "TABLET": "https://cbssportspmd-a.akamaihd.net/idevices/CBS_Production_Sports/2018/02/02/1152554051693/020218_Rome_PatrickMahomes_1494567_tablet.m3u8",
        "DESKTOP": "https://cbssportspmd-a.akamaihd.net/idevices/CBS_Production_Sports/2018/02/02/1152554051693/020218_Rome_PatrickMahomes_1494567_ott.m3u8",
        "PHONE": "https://cbssportspmd-a.akamaihd.net/idevices/CBS_Production_Sports/2018/02/02/1152554051693/020218_Rome_PatrickMahomes_1494567_phone.m3u8"
      }
    },
    "use_mdialog_sdk": 0,
    "title": "The Jim Rome Show: Patrick Mahomes talks Chiefs football",
    "nielsen_genre": "Sports News",
    "medium_thumbnail": "https://sportshub.cbsistatic.com/api/content/image/563d7a98-6218-4314-b8d7-98a697f8e505/resize/320x180.jpg",
    "series_title": "",
    "exclude_mobile": 0,
    "video_id": "e3b7c8c0-6140-43c5-82c2-d115c2a66bb3",
    "is_live": 0,
    "atvsc1080_thumbnail": "https://sportshub.cbsistatic.com/api/content/image/563d7a98-6218-4314-b8d7-98a697f8e505/showcase/e3b7c8c0-6140-43c5-82c2-d115c2a66bb3/771x282.jpg",
    "guid": "KJ4_TVMJ3uAYaCUIy1QbIaBdMLJBcDOu",
    "large_thumbnail": "https://sportshub.cbsistatic.com/api/content/image/563d7a98-6218-4314-b8d7-98a697f8e505/resize/640x360.jpg",
    "is_game_recap": 0,
    "micro_thumbnail": "https://sportshub.cbsistatic.com/api/content/image/563d7a98-6218-4314-b8d7-98a697f8e505/resize/80x45.jpg",
    "tags": [],
    "atvsc720_thumbnail": "https://sportshub.cbsistatic.com/api/content/image/563d7a98-6218-4314-b8d7-98a697f8e505/showcase/e3b7c8c0-6140-43c5-82c2-d115c2a66bb3/514x188.jpg",
    "length": 113,
    "notification": 0
  },
  {
    "...": ""
  }
]

I wasn't able to figure out where the value for the cargs parameter comes from. Hopefully someone can figure it out.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Linked pull requests

Successfully merging a pull request may close this issue.

None yet
1 participant
You can’t perform that action at this time.