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
Smotrim.ru does not download videos in MP4 format due to 403 Forbidden #9372
Comments
I don't know what this means
What is this???? Use yt-dlp if you want yt-dlp support |
This is a well-known download manager https://downloadMaster.com/download/, using yt-dlp, which can be seen from the log. |
You need to share an actual yt-dlp verbose log or else I am closing this issue |
He uses yt-dlp to get a link to download the video MP4. |
This site gives such links. This is a site problem. |
It looks like yt-dlp downloads HLS by default |
The fact is that the download wizard does not allow you to add your own keys. You need to write this to the developers of the download wizard, or rather the plugin, and ask them to add settings. Or to make it possible to add custom keys to launch the yt-dlp |
A similar problem with the inability to download the video mp4 on the site https://belsat.eu/programs using TVPlayer (HTML5). |
Agreed with @qzmtch that replacing the hostname is not a viable solution, since many sites/extractors return url results to the RUTV extractor. We could manually check the https formats like this: diff --git a/yt_dlp/extractor/rutv.py b/yt_dlp/extractor/rutv.py
index d7f9a7337..50b9464cd 100644
--- a/yt_dlp/extractor/rutv.py
+++ b/yt_dlp/extractor/rutv.py
@@ -1,6 +1,7 @@
import re
from .common import InfoExtractor
+from ..networking import HEADRequest
from ..utils import (
ExtractorError,
int_or_none,
@@ -156,6 +157,7 @@ def _real_extract(self, url):
for transport, links in media['sources'].items():
for quality, url in links.items():
+ format_id = f'{transport}-{quality}'
preference = -1 if priority_transport == transport else -2
if transport == 'rtmp':
mobj = re.search(r'^(?P<url>rtmp://[^/]+/(?P<app>.+))/(?P<playpath>.+)$', url)
@@ -178,13 +180,17 @@ def _real_extract(self, url):
self._merge_subtitles(subs, target=subtitles)
continue
else:
+ try:
+ self._request_webpage(HEADRequest(url), video_id, f'Checking {format_id} URL')
+ except ExtractorError:
+ continue
fmt = {
'url': url
}
fmt.update({
'width': int_or_none(quality, default=height, invscale=width, scale=height),
'height': int_or_none(quality, default=height),
- 'format_id': '%s-%s' % (transport, quality),
+ 'format_id': format_id,
'source_preference': preference,
})
formats.append(fmt) But that would be rather inconvenient if the http formats work fine for other sites/users. Alternatively, we could make use of the private diff --git a/yt_dlp/extractor/rutv.py b/yt_dlp/extractor/rutv.py
index d7f9a7337..fed7229f9 100644
--- a/yt_dlp/extractor/rutv.py
+++ b/yt_dlp/extractor/rutv.py
@@ -179,7 +179,8 @@ def _real_extract(self, url):
continue
else:
fmt = {
- 'url': url
+ 'url': url,
+ '__needs_testing': True,
}
fmt.update({
'width': int_or_none(quality, default=height, invscale=width, scale=height), |
While those patches would work as a yt-dlp solution, it looks like the 3rd party download manager is forcing https formats, so @zubrRB will likely need to raise an issue with the devs of that app in order to get this working for them. |
DM does not use --ignore-config switch |
DM developers will try to fix. |
DO NOT REMOVE OR SKIP THE ISSUE TEMPLATE
Checklist
Region
Russia
Provide a description that is worded well enough to be understood
I use to download
Download Master 7.1.2.1729
A month ago due to changes on the site stopped downloading videos because it gives a link to a blocked server.
Simply changing the domain allows you to download the video. https://smotrim.ru/video/2754644
cdn-v.smotrim.ru
— 403 Forbiddenhttps://cdn-v.smotrim.ru/_cdn_auth/secure/v/vh/mp4/fhd-wide/002/946/936.mp4?auth=mh&vid=2946936
cdn-v.rtr-vesti.ru
— download availablehttps://cdn-v.rtr-vesti.ru/_cdn_auth/secure/v/vh/mp4/fhd-wide/002/946/936.mp4?auth=mh&vid=2946936
Provide verbose output that clearly demonstrates the problem
yt-dlp -vU <your command line>
)'verbose': True
toYoutubeDL
params instead[debug] Command-line config
) and insert it belowComplete Verbose Output
The text was updated successfully, but these errors were encountered: