mirror of
https://github.com/yt-dlp/yt-dlp.git
synced 2024-09-21 18:01:24 +02:00
Compare commits
2 Commits
8494b18164
...
926850e82c
Author | SHA1 | Date | |
---|---|---|---|
|
926850e82c | ||
|
ee678912c3 |
|
@ -1,3 +1,4 @@
|
||||||
|
import json
|
||||||
import random
|
import random
|
||||||
import itertools
|
import itertools
|
||||||
import urllib.parse
|
import urllib.parse
|
||||||
|
@ -19,28 +20,31 @@ from ..utils import (
|
||||||
|
|
||||||
class WeiboBaseIE(InfoExtractor):
|
class WeiboBaseIE(InfoExtractor):
|
||||||
def _update_visitor_cookies(self, visitor_url, video_id):
|
def _update_visitor_cookies(self, visitor_url, video_id):
|
||||||
|
headers = {'Referer': visitor_url}
|
||||||
chrome_ver = self._search_regex(
|
chrome_ver = self._search_regex(
|
||||||
r'Chrome/(\d+)', traverse_obj(self._downloader.params, ('http_headers', 'User-Agent', {str})),
|
r'Chrome/(\d+)', self.get_param('http_headers')['User-Agent'], 'user agent version', default='90')
|
||||||
'user agent version', default='90')
|
|
||||||
visitor_data = self._download_json(
|
visitor_data = self._download_json(
|
||||||
'https://passport.weibo.com/visitor/genvisitor', video_id,
|
'https://passport.weibo.com/visitor/genvisitor', video_id,
|
||||||
note='Generating first-visit guest request',
|
note='Generating first-visit guest request',
|
||||||
headers={'Referer': visitor_url},
|
headers=headers, transform_source=strip_jsonp,
|
||||||
transform_source=strip_jsonp,
|
|
||||||
data=urlencode_postdata({
|
data=urlencode_postdata({
|
||||||
'cb': 'gen_callback',
|
'cb': 'gen_callback',
|
||||||
'fp': f'{{"os":"1","browser":"Chrome{chrome_ver},0,0,0","fonts":"undefined","screenInfo":"1920*1080*24","plugins":""}}',
|
'fp': json.dumps({
|
||||||
}))['data']
|
'os': '1',
|
||||||
|
'browser': f'Chrome{chrome_ver},0,0,0',
|
||||||
|
'fonts': 'undefined',
|
||||||
|
'screenInfo': '1920*1080*24',
|
||||||
|
'plugins': ''
|
||||||
|
}, separators=(',', ':'))}))['data']
|
||||||
|
|
||||||
self._download_webpage(
|
self._download_webpage(
|
||||||
'https://passport.weibo.com/visitor/visitor', video_id,
|
'https://passport.weibo.com/visitor/visitor', video_id,
|
||||||
note='Running first-visit callback to get guest cookies',
|
note='Running first-visit callback to get guest cookies',
|
||||||
headers={'Referer': visitor_url},
|
headers=headers, query={
|
||||||
query={
|
|
||||||
'a': 'incarnate',
|
'a': 'incarnate',
|
||||||
't': visitor_data['tid'],
|
't': visitor_data['tid'],
|
||||||
'w': 3 if visitor_data.get('new_tid') else 2,
|
'w': 3 if visitor_data.get('new_tid') else 2,
|
||||||
'c': '%03d' % visitor_data.get('confidence', 100),
|
'c': f'{visitor_data.get("confidence", 100):03d}',
|
||||||
'gc': '',
|
'gc': '',
|
||||||
'cb': 'cross_domain',
|
'cb': 'cross_domain',
|
||||||
'from': 'weibo',
|
'from': 'weibo',
|
||||||
|
|
Loading…
Reference in New Issue
Block a user