projects
/
youtube-dl
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
[bravotv] fix extraction(closes #19213)
[youtube-dl]
/
youtube_dl
/
extractor
/
bitchute.py
diff --git
a/youtube_dl/extractor/bitchute.py
b/youtube_dl/extractor/bitchute.py
index 43b4732aa0f1c1dcc721f93134d00b439562f418..4f39424f59ee12bb5adb916e707b3a33e9d35e58 100644
(file)
--- a/
youtube_dl/extractor/bitchute.py
+++ b/
youtube_dl/extractor/bitchute.py
@@
-5,7
+5,10
@@
import itertools
import re
from .common import InfoExtractor
import re
from .common import InfoExtractor
-from ..utils import urlencode_postdata
+from ..utils import (
+ orderedSet,
+ urlencode_postdata,
+)
class BitChuteIE(InfoExtractor):
class BitChuteIE(InfoExtractor):
@@
-43,10
+46,16
@@
class BitChuteIE(InfoExtractor):
'description', webpage, 'title',
default=None) or self._og_search_description(webpage)
'description', webpage, 'title',
default=None) or self._og_search_description(webpage)
+ format_urls = []
+ for mobj in re.finditer(
+ r'addWebSeed\s*\(\s*(["\'])(?P<url>(?:(?!\1).)+)\1', webpage):
+ format_urls.append(mobj.group('url'))
+ format_urls.extend(re.findall(r'as=(https?://[^&"\']+)', webpage))
+
formats = [
formats = [
- {'url':
mobj.group('url')
}
- for
mobj in re.finditer(
- r'addWebSeed\s*\(\s*(["\'])(?P<url>(?:(?!\1).)+)\1', webpage)]
+ {'url':
format_url
}
+ for
format_url in orderedSet(format_urls)]
+ self._check_formats(formats, video_id)
self._sort_formats(formats)
description = self._html_search_regex(
self._sort_formats(formats)
description = self._html_search_regex(