前言
今天刚好看到一篇文章(aHR0cHM6Ly9tcC53ZWl4aW4ucXEuY29tL3MvYkI3amJUT2hlakNWMzZIM2o5OURzQQ==
),便想着试下,动手之前先去B站找找相关视频(大厂的加密一般分析和文章和视频都不少),磨刀不误砍柴工,找了个V 1.0.1.5版本的视频(aHR0cHM6Ly93d3cuYmlsaWJpbGkuY29tL3ZpZGVvL0JWMVVLV3hlTUVncC8/c3BtX2lkX2Zyb209MzMzLjMzNy5zZWFyY2gtY2FyZC5hbGwuY2xpY2smdmRfc291cmNlPTA2MGI2Y2I0NTAzYzczY2ZkMjU1NWE3M2Y4Zjk4NjZl
)。前期准备完成后,开干。没成想直接就干出结果了,而且补环境框架一行代码没改。水篇文章记录下。
目标
某音二级评论的a_bogus
环境
python版本:python311
补环境框架: pyv8env
流程
直接上简化版代码
js
// bdms_1.0.1.19_fix.js文件内容---start
/* V 1.0.1.19-fix.01 */
if(!window.bdms){!function(){var t={6696:
// 省略.......
r=o[a++];p-=r;var e=v.slice(p+1,p+r+1),n=v[p--],d=v[p--];if("function"!=typeof n)return f=3,void(l=new TypeError(typeof n+" is not a function"));var y=V.get(n);if(y)h.push([o,i,u,s,c,a,f,l]),g(y[0],d,e,y[1]);else{
var m=n.apply(d,e);
v[++p]=m;
// 添加这行代码导出a_bogus值 通过m=n.apply(d,e)定位全文只有一个地方
if(e.length==2 && e[0]==='a_bogus'){window.a_bogus=e[1]}}
}else{var w=v[p--];v[p]=v[p]<=w}else if(
// 省略.......
window.bdms=n}();}
// bdms_1.0.1.19_fix.js文件内容---end
;;
// 初始化bdms会添加各种事件
// 可浏览器搜索window.bdms.init断点查看入参值
window.bdms.init({
"aid": 6383,
"pageId": 6241,
"paths": [
"^/webcast/",
"^/aweme/v1/",
"^/aweme/v2/",
"/v1/message/send",
"^/live/",
"^/captcha/",
"^/ecom/"
],
"boe": false,
"ddrt": 8.5,
"ic": 8.5
});
// 导出函数调用生成a_bogus值
get_a_bogus = function(url){
xhr = new XMLHttpRequest;
xhr.bdmsInvokeList = [
{"args": ["GET", url, true], func: function(){}},
{"args": ["Accept","application/json, text/plain, */*"], func: function(){}},
{"args": ["bd-ticket-guard-web-version", 2], func: function(){}},
{"args": ["bd-ticket-guard-version", 2], func: function(){} },
{"args": ["bd-ticket-guard-iteration-version", 1], func: function(){}}
]
xhr.send(null)
return window.a_bogus
}
/*
注意:
在该位置请触发window.bdms.init执行后生成的鼠标移动点击之类的事件
必须触发至少一次鼠标事件,不触发不给过
必须触发至少一次鼠标事件,不触发不给过
必须触发至少一次鼠标事件,不触发不给过
*/
// 调用生成a_bogus
ms_token = 'HNHnOv7Uj6......17QFVqKevkvOKWw%3D%3D';
console.log(get_a_bogus(`https://www-hj.douyin.com/aweme/v1/web/comment/list/reply/?device_platform=webapp&aid=6383&channel=channel_pc_web&item_id=7322042668907842867&comment_id=7322081223559103272&cut_version=1&cursor=0&count=3&item_type=0&update_version_code=170400&pc_client_type=1&pc_libra_divert=Windows&version_code=170400&version_name=17.4.0&cookie_enabled=true&screen_width=2560&screen_height=1080&browser_language=zh-CN&browser_platform=Win32&browser_name=Chrome&browser_version=130.0.0.0&browser_online=true&engine_name=Blink&engine_version=130.0.0.0&os_name=Windows&os_version=10&cpu_core_num=16&device_memory=8&platform=PC&downlink=10&effective_type=4g&round_trip_time=0&webid=7446688975144207935&msToken=${ms_token}`));
检测点分析
直接看日志分析
- 加载bdms_1.0.1.19_fix.js文件时的的hook日志
css
getter: Window.bdms -> undefined
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.TypeError -> function TypeError() { [native code] }
getter: Window.document -> [object HTMLDocument]
getter: Window.document -> [object HTMLDocument]
getter: HTMLDocument.all -> [object HTMLAllCollection]
getter: Window.navigator -> [object Navigator]
getter: Window.navigator -> [object Navigator]
getter: Navigator.userAgent -> Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/130.0.0.0 Safari/537.36
getter: Window.process -> undefined
getter: Window.Deno -> undefined
getter: Window.TypeError -> function TypeError() { [native code] }
getter: Window.TypeError -> function TypeError() { [native code] }
getter: Window.__core-js_shared__ -> undefined
setter: Window.__core-js_shared__ = {}
getter: Window.TypeError -> function TypeError() { [native code] }
getter: Window.document -> [object HTMLDocument]
getter: HTMLDocument.createElement -> function createElement() { [native code] }
getter: Window.TypeError -> function TypeError() { [native code] }
getter: Window.TypeError -> function TypeError() { [native code] }
getter: Window.WeakMap -> function WeakMap() { [native code] }
getter: Window.TypeError -> function TypeError() { [native code] }
getter: Window.WeakMap -> function WeakMap() { [native code] }
getter: Window.Reflect -> [object Reflect]
getter: Window.Reflect -> [object Reflect]
getter: Window.TypeError -> function TypeError() { [native code] }
getter: Window.document -> [object HTMLDocument]
getter: Window.document -> [object HTMLDocument]
getter: HTMLDocument.documentElement -> [object HTMLHtmlElement]
getter: Window.Error -> function Error() { [native code] }
getter: Window.Error -> function Error() { [native code] }
getter: Window.Error -> function Error() { [native code] }
getter: Window.TypeError -> function TypeError() { [native code] }
getter: Window.TypeError -> function TypeError() { [native code] }
getter: Window.Error -> function Error() { [native code] }
getter: Window.AggregateError -> function AggregateError() { [native code] }
getter: Window.process -> undefined
getter: Window.TypeError -> function TypeError() { [native code] }
getter: Window.Reflect -> [object Reflect]
getter: Window.Reflect -> [object Reflect]
getter: Window.TypeError -> function TypeError() { [native code] }
getter: Window.Reflect -> [object Reflect]
getter: Window.Reflect -> [object Reflect]
getter: Window.TypeError -> function TypeError() { [native code] }
getter: Window.setImmediate -> undefined
getter: Window.clearImmediate -> undefined
getter: Window.process -> undefined
getter: Window.Dispatch -> undefined
getter: Window.MessageChannel -> function MessageChannel() { [native code] }
getter: Window.location -> [object Location]
construct: new MessageChannel() -> undefined
getter: MessageChannel.port2 -> [object MessagePort]
getter: MessageChannel.port1 -> [object MessagePort]
setter: MessagePort.onmessage = function(t){k(t.data)}
getter: MessagePort.postMessage -> function postMessage() { [native code] }
getter: Window.MutationObserver -> function MutationObserver() { [native code] }
getter: Window.document -> [object HTMLDocument]
getter: Window.process -> undefined
getter: Window.Promise -> function Promise() { [native code] }
getter: Window.Promise -> function Promise() { [native code] }
getter: Window.Deno -> undefined
getter: Window.document -> [object HTMLDocument]
getter: Window.PromiseRejectionEvent -> function PromiseRejectionEvent() { [native code] }
getter: Window.TypeError -> function TypeError() { [native code] }
getter: Window.TypeError -> function TypeError() { [native code] }
getter: Window.document -> [object HTMLDocument]
getter: Window.process -> undefined
getter: HTMLDocument.createEvent -> function createEvent() { [native code] }
getter: Window.dispatchEvent -> function dispatchEvent() { [native code] }
getter: Window.Promise -> function Promise() { [native code] }
getter: Window.Promise -> function Promise() { [native code] }
getter: Window.Promise -> function Promise() { [native code] }
getter: Window.Promise -> function Promise() { [native code] }
getter: Window.Promise -> function Promise() { [native code] }
getter: Window.Promise -> function Promise() { [native code] }
getter: Window.Promise -> function Promise() { [native code] }
getter: Window.Promise -> function Promise() { [native code] }
getter: Window.Promise -> function Promise() { [native code] }
getter: Window.Promise -> function Promise() { [native code] }
getter: Window.Promise -> function Promise() { [native code] }
getter: Window.Promise -> function Promise() { [native code] }
getter: Window.Promise -> function Promise() { [native code] }
getter: Window.Promise -> function Promise() { [native code] }
getter: HTMLDocument.createElement -> function createElement() { [native code] }
method: HTMLDocument.fn_createElement('span',) -> [object HTMLSpanElement]
getter: HTMLSpanElement.classList -> [object DOMTokenList]
getter: DOMTokenList.constructor -> function DOMTokenList() { [native code] }
getter: DOMTokenList.constructor -> function DOMTokenList() { [native code] }
getter: Window.CSSRuleList -> function CSSRuleList() { [native code] }
getter: Window.CSSRuleList -> function CSSRuleList() { [native code] }
getter: Window.CSSStyleDeclaration -> function CSSStyleDeclaration() { [native code] }
getter: Window.CSSStyleDeclaration -> function CSSStyleDeclaration() { [native code] }
getter: Window.CSSValueList -> undefined
getter: Window.ClientRectList -> undefined
getter: Window.DOMRectList -> function DOMRectList() { [native code] }
getter: Window.DOMRectList -> function DOMRectList() { [native code] }
getter: Window.DOMStringList -> function DOMStringList() { [native code] }
getter: Window.DOMStringList -> function DOMStringList() { [native code] }
getter: Window.DOMTokenList -> function DOMTokenList() { [native code] }
getter: Window.DOMTokenList -> function DOMTokenList() { [native code] }
getter: Window.DataTransferItemList -> function DataTransferItemList() { [native code] }
getter: Window.DataTransferItemList -> function DataTransferItemList() { [native code] }
getter: Window.FileList -> function FileList() { [native code] }
getter: Window.FileList -> function FileList() { [native code] }
getter: Window.HTMLAllCollection -> function HTMLAllCollection() { [native code] }
getter: Window.HTMLAllCollection -> function HTMLAllCollection() { [native code] }
getter: Window.HTMLCollection -> function HTMLCollection() { [native code] }
getter: Window.HTMLCollection -> function HTMLCollection() { [native code] }
getter: Window.HTMLFormElement -> function HTMLFormElement() { [native code] }
getter: Window.HTMLFormElement -> function HTMLFormElement() { [native code] }
getter: Window.HTMLSelectElement -> function HTMLSelectElement() { [native code] }
getter: Window.HTMLSelectElement -> function HTMLSelectElement() { [native code] }
getter: Window.MediaList -> function MediaList() { [native code] }
getter: Window.MediaList -> function MediaList() { [native code] }
getter: Window.MimeTypeArray -> function MimeTypeArray() { [native code] }
getter: Window.MimeTypeArray -> function MimeTypeArray() { [native code] }
getter: Window.NamedNodeMap -> function NamedNodeMap() { [native code] }
getter: Window.NamedNodeMap -> function NamedNodeMap() { [native code] }
getter: Window.NodeList -> function NodeList() { [native code] }
getter: Window.NodeList -> function NodeList() { [native code] }
getter: Window.PaintRequestList -> undefined
getter: Window.Plugin -> function Plugin() { [native code] }
getter: Window.Plugin -> function Plugin() { [native code] }
getter: Window.PluginArray -> function PluginArray() { [native code] }
getter: Window.PluginArray -> function PluginArray() { [native code] }
getter: Window.SVGLengthList -> function SVGLengthList() { [native code] }
getter: Window.SVGLengthList -> function SVGLengthList() { [native code] }
getter: Window.SVGNumberList -> function SVGNumberList() { [native code] }
getter: Window.SVGNumberList -> function SVGNumberList() { [native code] }
getter: Window.SVGPathSegList -> undefined
getter: Window.SVGPointList -> function SVGPointList() { [native code] }
getter: Window.SVGPointList -> function SVGPointList() { [native code] }
getter: Window.SVGStringList -> function SVGStringList() { [native code] }
getter: Window.SVGStringList -> function SVGStringList() { [native code] }
getter: Window.SVGTransformList -> function SVGTransformList() { [native code] }
getter: Window.SVGTransformList -> function SVGTransformList() { [native code] }
getter: Window.SourceBufferList -> function SourceBufferList() { [native code] }
getter: Window.SourceBufferList -> function SourceBufferList() { [native code] }
getter: Window.StyleSheetList -> function StyleSheetList() { [native code] }
getter: Window.StyleSheetList -> function StyleSheetList() { [native code] }
getter: Window.TextTrackCueList -> function TextTrackCueList() { [native code] }
getter: Window.TextTrackCueList -> function TextTrackCueList() { [native code] }
getter: Window.TextTrackList -> function TextTrackList() { [native code] }
getter: Window.TextTrackList -> function TextTrackList() { [native code] }
getter: Window.TouchList -> function TouchList() { [native code] }
getter: Window.TouchList -> function TouchList() { [native code] }
getter: Window.TypeError -> function TypeError() { [native code] }
getter: Window.QObject -> undefined
getter: Window.JSON -> [object JSON]
getter: Window.JSON -> [object JSON]
getter: Window.JSON -> [object JSON]
getter: Window.TypeError -> function TypeError() { [native code] }
getter: Window.JSON -> [object JSON]
getter: Window.Reflect -> [object Reflect]
getter: Window.Reflect -> [object Reflect]
getter: Window.URL -> function URL() { [native code] }
construct: new URL('b?a=1&b=2&c=3', 'http://a') -> undefined
getter: URL.searchParams -> [object URLSearchParams]
setter: URL.pathname = c%20d
getter: URLSearchParams.forEach -> function forEach() { [native code] }
getter: URLSearchParams.delete -> function delete() { [native code] }
method: URLSearchParams.fn_delete('b',) -> undefined
getter: URLSearchParams.delete -> function delete() { [native code] }
method: URLSearchParams.fn_delete('b',) -> undefined
method: URLSearchParams.fn_forEach(function(t,n){r.delete("b"),e+=n+t},) -> undefined
getter: URLSearchParams.size -> 2
getter: URLSearchParams.sort -> function sort() { [native code] }
getter: URL.href -> http://a/c%20d?a=1&c=3
getter: URLSearchParams.get -> function get() { [native code] }
method: URLSearchParams.fn_get('c',) -> 3
getter: Window.URLSearchParams -> function URLSearchParams() { [native code] }
construct: new URLSearchParams('?a=1',) -> undefined
getter: URLSearchParams.Symbol.toPrimitive -> undefined
getter: URLSearchParams.toString -> function toString() { [native code] }
method: URLSearchParams.fn_toString() -> a=1
getter: URLSearchParams.Symbol.iterator -> undefined
getter: Window.RangeError -> function RangeError() { [native code] }
getter: Window.Request -> function Request() { [native code] }
getter: Window.Headers -> function Headers() { [native code] }
getter: Window.TypeError -> function TypeError() { [native code] }
getter: Window.decodeURIComponent -> function decodeURIComponent() { [native code] }
getter: Window.encodeURIComponent -> function encodeURIComponent() { [native code] }
getter: Window.URLSearchParams -> function URLSearchParams() { [native code] }
getter: Window.URLSearchParams -> function URLSearchParams() { [native code] }
setter: Window.URLSearchParams = function(){g(this,vt);var t=U(this,new lt(arguments.length>0?arguments[0]:void 0));s||(this.length=t.entries.length)}
setter: Window.fetch = function(t){return Q(t,arguments.length>1?dt(arguments[1]):{})}
getter: Window.Request -> function Request() { [native code] }
getter: Window.Request -> function Request() { [native code] }
setter: Window.Request = function(t){return g(this,N),new H(t,arguments.length>1?dt(arguments[1]):{})}
getter: Window.URL -> function URL() { [native code] }
getter: Window.TypeError -> function TypeError() { [native code] }
getter: Window.URL -> function URL() { [native code] }
getter: Window.URL -> function URL() { [native code] }
setter: Window.URL = function(t){var r=p(this,Ht),e=x(arguments.length,1)>1?arguments[1]:void 0,n=j(r,new Bt(t,!1,e));i||(r.href=n.serialize(),r.origin=n.getOrigin(),r.protocol=n.getProtocol(),r.username=n.getUsername(),r.password=n.getPassword(),r.host=n.getHost(),r.hostname=n.getHostname(),r.port=n.getPort(),r.pathname=n.getPathname(),r.search=n.getSearch(),r.searchParams=n.getSearchParams(),r.hash=n.getHash())}
getter: Window.URL -> function(t){var r=p(this,Ht),e=x(arguments.length,1)>1?arguments[1]:void 0,n=j(r,new Bt(t,!1,e));i||(r.href=n.serialize(),r.origin=n.getOrigin(),r.protocol=n.getProtocol(),r.username=n.getUsername(),r.password=n.getPassword(),r.host=n.getHost(),r.hostname=n.getHostname(),r.port=n.getPort(),r.pathname=n.getPathname(),r.search=n.getSearch(),r.searchParams=n.getSearchParams(),r.hash=n.getHash())}
getter: Window.URLSearchParams -> function(){g(this,vt);var t=U(this,new lt(arguments.length>0?arguments[0]:void 0));s||(this.length=t.entries.length)}
getter: Window.Uint8Array -> function Uint8Array() { [native code] }
getter: Window.Uint16Array -> function Uint16Array() { [native code] }
getter: Window.Int32Array -> function Int32Array() { [native code] }
getter: Window.TextDecoder -> function TextDecoder() { [native code] }
getter: Window.TextDecoder -> function TextDecoder() { [native code] }
construct: new TextDecoder() -> undefined
getter: TextDecoder.decode -> function decode() { [native code] }
method: TextDecoder.fn_decode(Uint8Array[], {'stream': True}) ->
getter: Window.queueMicrotask -> function queueMicrotask() { [native code] }
getter: Window.queueMicrotask -> function queueMicrotask() { [native code] }
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.TypeError -> function TypeError() { [native code] }
getter: Window.document -> [object HTMLDocument]
getter: Window.document -> [object HTMLDocument]
getter: HTMLDocument.all -> [object HTMLAllCollection]
getter: Window.navigator -> [object Navigator]
getter: Navigator.userAgent -> Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/130.0.0.0 Safari/537.36
getter: Window.process -> undefined
getter: Window.Deno -> undefined
getter: Window.TypeError -> function TypeError() { [native code] }
getter: Window.TypeError -> function TypeError() { [native code] }
getter: Window.__core-js_shared__ -> {'versions': [{'version': '3.29.1', 'mode': 'global', 'copyright': '© 2014-2023 Denis Pushkarev (zloirock.ru)', 'license': 'https://github.com/zloirock/core-js/blob/v3.29.1/LICENSE', 'source': 'https://github.com/zloirock/core-js'}], 'wks': {'toPrimitive': 'Symbol.toPrimitive', 'iterator': 'Symbol.iterator', 'toStringTag': 'Symbol.toStringTag', 'unscopables': 'Symbol.unscopables', 'species': 'Symbol.species', 'isConcatSpreadable': 'Symbol.isConcatSpreadable', 'asyncDispose': 'Symbol.asyncDispose', 'metadata': 'Symbol.metadata'}, 'inspectSource': function(t){return u(t)}, 'keys': {'IE_PROTO': 'Symbol(IE_PROTO)_1.cxszkicm9w', 'hidden': 'Symbol(hidden)_2.cxszkicm9v'}, 'state': [object WeakMap], 'symbols': {}, 'op-symbols': {}, 'string-to-symbol-registry': {}, 'symbol-to-string-registry': {}}
getter: Window.TypeError -> function TypeError() { [native code] }
getter: Window.document -> [object HTMLDocument]
getter: HTMLDocument.createElement -> function createElement() { [native code] }
getter: Window.TypeError -> function TypeError() { [native code] }
getter: Window.TypeError -> function TypeError() { [native code] }
getter: Window.WeakMap -> function WeakMap() { [native code] }
getter: Window.TypeError -> function TypeError() { [native code] }
getter: Window.WeakMap -> function WeakMap() { [native code] }
getter: Window.Reflect -> [object Reflect]
getter: Window.Reflect -> [object Reflect]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.ArrayBuffer -> function ArrayBuffer() { [native code] }
getter: Window.DataView -> function DataView() { [native code] }
getter: Window.TypeError -> function TypeError() { [native code] }
getter: Window.Int8Array -> function Int8Array() { [native code] }
getter: Window.Uint8ClampedArray -> function Uint8ClampedArray() { [native code] }
getter: Window.TypeError -> function TypeError() { [native code] }
getter: Window.opera -> undefined
getter: Window.Int8Array -> function Int8Array() { [native code] }
getter: Window.Uint8Array -> function Uint8Array() { [native code] }
getter: Window.Uint8ClampedArray -> function Uint8ClampedArray() { [native code] }
getter: Window.Int16Array -> function Int16Array() { [native code] }
getter: Window.Uint16Array -> function Uint16Array() { [native code] }
getter: Window.Int32Array -> function Int32Array() { [native code] }
getter: Window.Uint32Array -> function Uint32Array() { [native code] }
getter: Window.Float32Array -> function Float32Array() { [native code] }
getter: Window.Float64Array -> function Float64Array() { [native code] }
getter: Window.BigInt64Array -> function BigInt64Array() { [native code] }
getter: Window.BigUint64Array -> function BigUint64Array() { [native code] }
getter: Window.ArrayBuffer -> function ArrayBuffer() { [native code] }
getter: Window.Int8Array -> function Int8Array() { [native code] }
getter: Window.Reflect -> [object Reflect]
getter: Window.Reflect -> [object Reflect]
getter: Window.TypeError -> function TypeError() { [native code] }
getter: Window.TypeError -> function TypeError() { [native code] }
getter: Window.TypeError -> function TypeError() { [native code] }
getter: Window.Map -> function Map() { [native code] }
getter: Window.Map -> function Map() { [native code] }
getter: Window.atob -> function atob() { [native code] }
method: Window.fn_atob('UEsCAFcmyLYXgfqCo8W09d6m44AiHgUMpNsL2FV8yIR/3d2T7HxCmkTAgxU7L9LLl...省略',) -> PK W&ȶú£Å´...省略
getter: Window.Uint8Array -> function Uint8Array() { [native code] }
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.performance -> [object Performance]
getter: Performance.now -> function now() { [native code] }
method: Performance.fn_now() -> 563.39501953125
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.requestAnimationFrame -> function requestAnimationFrame() { [native code] }
method: Window.fn_requestAnimationFrame(function(){return X(e,this,arguments,r)},) -> 1
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.navigator -> [object Navigator]
getter: Navigator.userAgent -> Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/130.0.0.0 Safari/537.36
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window._sdkGlueVersionMap -> undefined
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
setter: Window._sdkGlueVersionMap = {'bdmsVersion': '1.0.1.19-fix.01'}
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.localStorage -> [object Storage]
getter: Storage.getItem -> function getItem() { [native code] }
method: Storage.fn_getItem('xmst',) -> null
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.XMLHttpRequest -> function XMLHttpRequest() { [native code] }
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.XMLHttpRequest -> function XMLHttpRequest() { [native code] }
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.XMLHttpRequest -> function XMLHttpRequest() { [native code] }
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.performance -> [object Performance]
getter: Performance.now -> function now() { [native code] }
method: Performance.fn_now() -> 590.527099609375
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.XMLHttpRequest -> function XMLHttpRequest() { [native code] }
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.fetch -> function(t){return Q(t,arguments.length>1?dt(arguments[1]):{})}
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.fetch -> function(t){return Q(t,arguments.length>1?dt(arguments[1]):{})}
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
setter: Window.fetch = function(){return X(e,this,arguments,r)}
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.EventSource -> function EventSource() { [native code] }
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.EventSource -> function EventSource() { [native code] }
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.Reflect -> [object Reflect]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
setter: Window.EventSource = function(){return X(e,this,arguments,r)}
getter: Window.EventSource -> undefined
getter: Window.EventSource -> undefined
setter: Window.EventSource = function(){return X(e,this,arguments,r)}
setter: Window.bdms = [object Module]
- window.bdms.init调用时的hook日志
vbnet
getter: Window.bdms -> [object Module]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
setter: Window.onwheelx = {'_Ax': '0X21'}
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.navigator -> [object Navigator]
setter: Navigator.pemrissions = {'microphone': 'granted'}
getter: Navigator.pemrissions -> undefined
getter: Navigator.pemrissions -> undefined
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.navigator -> [object Navigator]
getter: Navigator.__proto__ -> [object Navigator]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.navigator -> [object Navigator]
getter: Navigator.__proto__ -> [object Navigator]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.navigator -> [object Navigator]
getter: Navigator.pemrissions -> {'microphone': 'granted'}
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.navigator -> [object Navigator]
getter: Navigator.pemrissions -> {'microphone': 'granted'}
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.navigator -> [object Navigator]
getter: Navigator.__proto__ -> [object Navigator]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.navigator -> [object Navigator]
getter: Navigator.__proto__ -> [object Navigator]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.navigator -> [object Navigator]
getter: Navigator.__proto__ -> [object Navigator]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.onwheelx -> {'_Ax': '0X21'}
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.onwheelx -> {'_Ax': '0X21'}
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.document -> [object HTMLDocument]
getter: HTMLDocument.addEventListener -> function addEventListener() { [native code] }
method: HTMLDocument.fn_addEventListener('visibilitychange', function(){return X(e,this,arguments,r)}) -> undefined
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.setTimeout -> function setTimeout() { [native code] }
method: Window.fn_setTimeout(function(){return X(e,this,arguments,r)}, 17000) -> 1
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.document -> [object HTMLDocument]
getter: HTMLDocument.addEventListener -> function addEventListener() { [native code] }
method: HTMLDocument.fn_addEventListener('mousemove', function(){return X(e,this,arguments,r)}) -> undefined
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.document -> [object HTMLDocument]
getter: HTMLDocument.addEventListener -> function addEventListener() { [native code] }
method: HTMLDocument.fn_addEventListener('touchmove', function(){return X(e,this,arguments,r)}) -> undefined
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.document -> [object HTMLDocument]
getter: HTMLDocument.addEventListener -> function addEventListener() { [native code] }
method: HTMLDocument.fn_addEventListener('mousedown', function(){return X(e,this,arguments,r)}) -> undefined
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.document -> [object HTMLDocument]
getter: HTMLDocument.addEventListener -> function addEventListener() { [native code] }
method: HTMLDocument.fn_addEventListener('touchstart', function(){return X(e,this,arguments,r)}) -> undefined
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.document -> [object HTMLDocument]
getter: HTMLDocument.addEventListener -> function addEventListener() { [native code] }
method: HTMLDocument.fn_addEventListener('mouseup', function(){return X(e,this,arguments,r)}) -> undefined
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.document -> [object HTMLDocument]
getter: HTMLDocument.addEventListener -> function addEventListener() { [native code] }
method: HTMLDocument.fn_addEventListener('touchend', function(){return X(e,this,arguments,r)}) -> undefined
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.document -> [object HTMLDocument]
getter: HTMLDocument.addEventListener -> function addEventListener() { [native code] }
method: HTMLDocument.fn_addEventListener('keydown', function(){return X(e,this,arguments,r)}) -> undefined
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.document -> [object HTMLDocument]
getter: HTMLDocument.addEventListener -> function addEventListener() { [native code] }
method: HTMLDocument.fn_addEventListener('mouseover', function(){return X(e,this,arguments,r)}) -> undefined
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.document -> [object HTMLDocument]
getter: HTMLDocument.addEventListener -> function addEventListener() { [native code] }
method: HTMLDocument.fn_addEventListener('mouseout', function(){return X(e,this,arguments,r)}) -> undefined
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.self -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.top -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.addEventListener -> function addEventListener() { [native code] }
method: Window.fn_addEventListener('deviceorientation', function(){return X(e,this,arguments,r)}) -> undefined
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.document -> [object HTMLDocument]
getter: HTMLDocument.addEventListener -> function addEventListener() { [native code] }
method: HTMLDocument.fn_addEventListener('visibilitychange', function(){return X(e,this,arguments,r)}) -> undefined
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.setInterval -> function setInterval() { [native code] }
setInterval: 2 {'delay': 300000, 'type': 'Interval', 'start': 1734079812787, 'func': function(){return X(e,this,arguments,r)}, 'arguments': []}
method: Window.fn_setInterval(function(){return X(e,this,arguments,r)}, 300000) -> 2
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.setTimeout -> function setTimeout() { [native code] }
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
method: Window.fn_setTimeout(function(){return X(e,this,arguments,r)}, 8500) -> 3
- 随机手动触发鼠标移动时的日志
vbnet
getter: MouseEvent.clientX -> 1149
getter: MouseEvent.clientY -> 4
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
[object HTMLDocument].dispatchEvent(<chrome.v8_mouse_event.MouseEvent object at 0x0000018BCD287BE0>,) -> function(){return X(e,this,arguments,r)}
getter: MouseEvent.clientX -> 1135
getter: MouseEvent.clientY -> 38
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
[object HTMLDocument].dispatchEvent(<chrome.v8_mouse_event.MouseEvent object at 0x0000018BCD287CA0>,) -> function(){return X(e,this,arguments,r)}
getter: MouseEvent.clientX -> 1126
getter: MouseEvent.clientY -> 69
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
[object HTMLDocument].dispatchEvent(<chrome.v8_mouse_event.MouseEvent object at 0x0000018BCD287D60>,) -> function(){return X(e,this,arguments,r)}
// 触发一个鼠标事件就可以, 我这触发了挺多
- 调用get_a_bogus生成a_bogus时的日志
yaml
getter: Window.XMLHttpRequest -> function XMLHttpRequest() { [native code] }
construct: new XMLHttpRequest() -> undefined
setter: XMLHttpRequest.bdmsInvokeList = [{'args': ['GET', 'https://www-hj.douyin.com/aweme/v1/web/comment/list/reply/?device_platform=webapp&aid=6383&channel=channel_pc_web&item_id=7322042668907842867&comment_id=7322081223559103272&cut_version=1&cursor=0&count=3&item_type=0&update_version_code=170400&pc_client_type=1&pc_libra_divert=Windows&version_code=170400&version_name=17.4.0&cookie_enabled=true&screen_width=2560&screen_height=1080&browser_language=zh-CN&browser_platform=Win32&browser_name=Chrome&browser_version=130.0.0.0&browser_online=true&engine_name=Blink&engine_version=130.0.0.0&os_name=Windows&os_version=10&cpu_core_num=16&device_memory=8&platform=PC&downlink=10&effective_type=4g&round_trip_time=0&webid=7446688975144207935&msToken=HNHnOv7Uj61s8j-Y7...', True], 'func': function(){}}, {'args': ['Accept', 'application/json, text/plain, */*'], 'func': function(){}}, {'args': ['bd-ticket-guard-web-version', 2], 'func': function(){}}, {'args': ['bd-ticket-guard-version', 2], 'func': function(){}}, {'args': ['bd-ticket-guard-iteration-version', 1], 'func': function(){}}]
getter: XMLHttpRequest.send -> function(){return X(e,this,arguments,r)}
getter: XMLHttpRequest.bdmsInvokeList -> [{'args': ['GET', 'https://www-hj.douyin.com/aweme/v1/web/comment/list/reply/?device_platform=webapp&aid=6383&channel=channel_pc_web&item_id=7322042668907842867&comment_id=7322081223559103272&cut_version=1&cursor=0&count=3&item_type=0&update_version_code=170400&pc_client_type=1&pc_libra_divert=Windows&version_code=170400&version_name=17.4.0&cookie_enabled=true&screen_width=2560&screen_height=1080&browser_language=zh-CN&browser_platform=Win32&browser_name=Chrome&browser_version=130.0.0.0&browser_online=true&engine_name=Blink&engine_version=130.0.0.0&os_name=Windows&os_version=10&cpu_core_num=16&device_memory=8&platform=PC&downlink=10&effective_type=4g&round_trip_time=0&webid=7446688975144207935&msToken=HNHnOv7Uj61s8j-Y7...', True], 'func': function(){}}, {'args': ['Accept', 'application/json, text/plain, */*'], 'func': function(){}}, {'args': ['bd-ticket-guard-web-version', 2], 'func': function(){}}, {'args': ['bd-ticket-guard-version', 2], 'func': function(){}}, {'args': ['bd-ticket-guard-iteration-version', 1], 'func': function(){}}]
getter: XMLHttpRequest.bdmsInvokeList -> [{'args': ['GET', 'https://www-hj.douyin.com/aweme/v1/web/comment/list/reply/?device_platform=webapp&aid=6383&channel=channel_pc_web&item_id=7322042668907842867&comment_id=7322081223559103272&cut_version=1&cursor=0&count=3&item_type=0&update_version_code=170400&pc_client_type=1&pc_libra_divert=Windows&version_code=170400&version_name=17.4.0&cookie_enabled=true&screen_width=2560&screen_height=1080&browser_language=zh-CN&browser_platform=Win32&browser_name=Chrome&browser_version=130.0.0.0&browser_online=true&engine_name=Blink&engine_version=130.0.0.0&os_name=Windows&os_version=10&cpu_core_num=16&device_memory=8&platform=PC&downlink=10&effective_type=4g&round_trip_time=0&webid=7446688975144207935&msToken=HNHnOv7Uj61s8j-Y7...', True], 'func': function(){}}, {'args': ['Accept', 'application/json, text/plain, */*'], 'func': function(){}}, {'args': ['bd-ticket-guard-web-version', 2], 'func': function(){}}, {'args': ['bd-ticket-guard-version', 2], 'func': function(){}}, {'args': ['bd-ticket-guard-iteration-version', 1], 'func': function(){}}]
getter: Window.globalThis -> [object Window]
getter: Window.URL -> function(t){var r=p(this,Ht),e=x(arguments.length,1)>1?arguments[1]:void 0,n=j(r,new Bt(t,!1,e));i||(r.href=n.serialize(),r.origin=n.getOrigin(),r.protocol=n.getProtocol(),r.username=n.getUsername(),r.password=n.getPassword(),r.host=n.getHost(),r.hostname=n.getHostname(),r.port=n.getPort(),r.pathname=n.getPathname(),r.search=n.getSearch(),r.searchParams=n.getSearchParams(),r.hash=n.getHash())}
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.URL -> function(t){var r=p(this,Ht),e=x(arguments.length,1)>1?arguments[1]:void 0,n=j(r,new Bt(t,!1,e));i||(r.href=n.serialize(),r.origin=n.getOrigin(),r.protocol=n.getProtocol(),r.username=n.getUsername(),r.password=n.getPassword(),r.host=n.getHost(),r.hostname=n.getHostname(),r.port=n.getPort(),r.pathname=n.getPathname(),r.search=n.getSearch(),r.searchParams=n.getSearchParams(),r.hash=n.getHash())}
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.URL -> function(t){var r=p(this,Ht),e=x(arguments.length,1)>1?arguments[1]:void 0,n=j(r,new Bt(t,!1,e));i||(r.href=n.serialize(),r.origin=n.getOrigin(),r.protocol=n.getProtocol(),r.username=n.getUsername(),r.password=n.getPassword(),r.host=n.getHost(),r.hostname=n.getHostname(),r.port=n.getPort(),r.pathname=n.getPathname(),r.search=n.getSearch(),r.searchParams=n.getSearchParams(),r.hash=n.getHash())}
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.location -> [object Location]
getter: Location.href -> https://www.douyin.com/user/MS4wLjABAAAA5LTyMrmmGgrHuG39z-JpXX4TklrfYvYxHWWVidYrao4?from_tab_name=main&modal_id=7322042668907842867
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.performance -> [object Performance]
getter: Performance.now -> function now() { [native code] }
method: Performance.fn_now() -> 163.82080078125
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.navigator -> [object Navigator]
getter: Navigator.__proto__ -> [object Navigator]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.navigator -> [object Navigator]
getter: Navigator.userAgent -> Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/130.0.0.0 Safari/537.36
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.onwheelx -> {'_Ax': '0X21'}
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.onwheelx -> {'_Ax': '0X21'}
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.onwheelx -> {'_Ax': '0X21'}
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.navigator -> [object Navigator]
getter: Window.globalThis -> [object Window]
getter: Window.document -> [object HTMLDocument]
getter: Window.globalThis -> [object Window]
getter: Window.location -> [object Location]
getter: Window.globalThis -> [object Window]
getter: Window.history -> [object History]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.navigator -> [object Navigator]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Navigator.Symbol.toStringTag -> Navigator
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.document -> [object HTMLDocument]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: HTMLDocument.Symbol.toStringTag -> HTMLDocument
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.location -> [object Location]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Location.Symbol.toStringTag -> Location
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.history -> [object History]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: History.Symbol.toStringTag -> History
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.document -> [object HTMLDocument]
getter: HTMLDocument.createElement -> function createElement() { [native code] }
method: HTMLDocument.fn_createElement('canvas',) -> [object HTMLCanvasElement]
getter: HTMLCanvasElement.toDataURL -> function toDataURL() { [native code] }
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.navigator -> [object Navigator]
getter: Navigator.toString -> function toString() { [native code] }
getter: Window.globalThis -> [object Window]
getter: Window.PluginArray -> function PluginArray() { [native code] }
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.navigator -> [object Navigator]
getter: Navigator.plugins -> [object PluginArray]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.PluginArray -> function PluginArray() { [native code] }
getter: Window.globalThis -> [object Window]
getter: Window.MSPluginsCollection -> undefined
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.screen -> [object Screen]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.eval -> function eval() { [native code] }
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.navigator -> [object Navigator]
getter: Navigator.connection -> [object NetworkInformation]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.navigator -> [object Navigator]
getter: Navigator.connection -> [object NetworkInformation]
getter: NetworkInformation.rtt -> 100
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.navigator -> [object Navigator]
getter: Navigator.userAgentData -> [object NavigatorUAData]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.navigator -> [object Navigator]
getter: Navigator.userAgentData -> [object NavigatorUAData]
getter: NavigatorUAData.brands -> [{'brand': 'Chromium', 'version': '130'}, {'brand': 'Google Chrome', 'version': '130'}, {'brand': 'Not=A?Brand', 'version': '24'}]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.innerWidth -> 1872
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.innerHeight -> 956
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.outerWidth -> 1920
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.outerHeight -> 1032
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.navigator -> [object Navigator]
getter: Navigator.appVersion -> 5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/130.0.0.0 Safari/537.36
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.navigator -> [object Navigator]
getter: Navigator.appVersion -> 5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/130.0.0.0 Safari/537.36
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.navigator -> [object Navigator]
getter: Navigator.userAgent -> Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/130.0.0.0 Safari/537.36
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.navigator -> [object Navigator]
getter: Navigator.userAgent -> Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/130.0.0.0 Safari/537.36
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.navigator -> [object Navigator]
getter: Navigator.webdriver -> False
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.navigator -> [object Navigator]
getter: Navigator.webdriver -> False
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window._selenium -> undefined
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.callSelenium -> undefined
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window._Selenium_IDE_Recorder -> undefined
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window._phantom -> undefined
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.__phantomas -> undefined
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.__nightmare -> undefined
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.callPhantom -> undefined
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.document -> [object HTMLDocument]
getter: HTMLDocument.__webdriver_evaluate -> undefined
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.document -> [object HTMLDocument]
getter: HTMLDocument.__webdriver_evaluate -> undefined
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.document -> [object HTMLDocument]
getter: HTMLDocument.__selenium_evaluate -> undefined
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.document -> [object HTMLDocument]
getter: HTMLDocument.__selenium_evaluate -> undefined
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.document -> [object HTMLDocument]
getter: HTMLDocument.__webdriver_script_function -> undefined
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.document -> [object HTMLDocument]
getter: HTMLDocument.__webdriver_script_function -> undefined
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.document -> [object HTMLDocument]
getter: HTMLDocument.__webdriver_script_func -> undefined
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.document -> [object HTMLDocument]
getter: HTMLDocument.__webdriver_script_func -> undefined
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.document -> [object HTMLDocument]
getter: HTMLDocument.__webdriver_script_fn -> undefined
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.document -> [object HTMLDocument]
getter: HTMLDocument.__webdriver_script_fn -> undefined
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.document -> [object HTMLDocument]
getter: HTMLDocument.__fxdriver_evaluate -> undefined
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.document -> [object HTMLDocument]
getter: HTMLDocument.__fxdriver_evaluate -> undefined
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.document -> [object HTMLDocument]
getter: HTMLDocument.__driver_unwrapped -> undefined
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.document -> [object HTMLDocument]
getter: HTMLDocument.__driver_unwrapped -> undefined
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.document -> [object HTMLDocument]
getter: HTMLDocument.__webdriver_unwrapped -> undefined
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.document -> [object HTMLDocument]
getter: HTMLDocument.__webdriver_unwrapped -> undefined
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.document -> [object HTMLDocument]
getter: HTMLDocument.__driver_evaluate -> undefined
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.document -> [object HTMLDocument]
getter: HTMLDocument.__driver_evaluate -> undefined
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.document -> [object HTMLDocument]
getter: HTMLDocument.__selenium_unwrapped -> undefined
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.document -> [object HTMLDocument]
getter: HTMLDocument.__selenium_unwrapped -> undefined
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.document -> [object HTMLDocument]
getter: HTMLDocument.__fxdriver_unwrapped -> undefined
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.document -> [object HTMLDocument]
getter: HTMLDocument.__fxdriver_unwrapped -> undefined
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.document -> [object HTMLDocument]
getter: HTMLDocument._Selenium_IDE_Recorder -> undefined
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.document -> [object HTMLDocument]
getter: HTMLDocument._Selenium_IDE_Recorder -> undefined
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.document -> [object HTMLDocument]
getter: HTMLDocument._selenium -> undefined
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.document -> [object HTMLDocument]
getter: HTMLDocument._selenium -> undefined
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.document -> [object HTMLDocument]
getter: HTMLDocument.calledSelenium -> undefined
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.document -> [object HTMLDocument]
getter: HTMLDocument.calledSelenium -> undefined
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.document -> [object HTMLDocument]
getter: HTMLDocument._WEBDRIVER_ELEM_CACHE -> undefined
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.document -> [object HTMLDocument]
getter: HTMLDocument._WEBDRIVER_ELEM_CACHE -> undefined
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.document -> [object HTMLDocument]
getter: HTMLDocument.ChromeDriverw -> undefined
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.document -> [object HTMLDocument]
getter: HTMLDocument.ChromeDriverw -> undefined
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.document -> [object HTMLDocument]
getter: HTMLDocument.driver-evaluate -> undefined
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.document -> [object HTMLDocument]
getter: HTMLDocument.driver-evaluate -> undefined
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.document -> [object HTMLDocument]
getter: HTMLDocument.webdriver-evaluate -> undefined
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.document -> [object HTMLDocument]
getter: HTMLDocument.webdriver-evaluate -> undefined
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.document -> [object HTMLDocument]
getter: HTMLDocument.selenium-evaluate -> undefined
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.document -> [object HTMLDocument]
getter: HTMLDocument.selenium-evaluate -> undefined
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.document -> [object HTMLDocument]
getter: HTMLDocument.webdriverCommand -> undefined
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.document -> [object HTMLDocument]
getter: HTMLDocument.webdriverCommand -> undefined
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.document -> [object HTMLDocument]
getter: HTMLDocument.webdriver-evaluate-response -> undefined
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.document -> [object HTMLDocument]
getter: HTMLDocument.webdriver-evaluate-response -> undefined
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.document -> [object HTMLDocument]
getter: HTMLDocument.__webdriverFunc -> undefined
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.document -> [object HTMLDocument]
getter: HTMLDocument.__webdriverFunc -> undefined
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.document -> [object HTMLDocument]
getter: HTMLDocument.__webdriver_script_fn -> undefined
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.document -> [object HTMLDocument]
getter: HTMLDocument.__webdriver_script_fn -> undefined
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.document -> [object HTMLDocument]
getter: HTMLDocument.__$webdriverAsyncExecutor -> undefined
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.document -> [object HTMLDocument]
getter: HTMLDocument.__$webdriverAsyncExecutor -> undefined
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.document -> [object HTMLDocument]
getter: HTMLDocument.__lastWatirAlert -> undefined
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.document -> [object HTMLDocument]
getter: HTMLDocument.__lastWatirAlert -> undefined
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.document -> [object HTMLDocument]
getter: HTMLDocument.__lastWatirConfirm -> undefined
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.document -> [object HTMLDocument]
getter: HTMLDocument.__lastWatirConfirm -> undefined
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.document -> [object HTMLDocument]
getter: HTMLDocument.__lastWatirPrompt -> undefined
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.document -> [object HTMLDocument]
getter: HTMLDocument.__lastWatirPrompt -> undefined
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.document -> [object HTMLDocument]
getter: HTMLDocument.$chrome_asyncScriptInfo -> undefined
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.document -> [object HTMLDocument]
getter: HTMLDocument.$chrome_asyncScriptInfo -> undefined
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.document -> [object HTMLDocument]
getter: HTMLDocument.$cdc_asdjflasutopfhvcZLmcfl_ -> undefined
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.document -> [object HTMLDocument]
getter: HTMLDocument.$cdc_asdjflasutopfhvcZLmcfl_ -> undefined
getter: Window.globalThis -> [object Window]
getter: Window.PluginArray -> function PluginArray() { [native code] }
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.navigator -> [object Navigator]
getter: Navigator.plugins -> [object PluginArray]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.PluginArray -> function PluginArray() { [native code] }
getter: Window.globalThis -> [object Window]
getter: Window.MSPluginsCollection -> undefined
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window._phantom -> undefined
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.callPhantom -> undefined
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.__nightmare -> undefined
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.Audio -> function Audio() { [native code] }
getter: Window.globalThis -> [object Window]
getter: Window.__non_webpack_require__ -> undefined
getter: Window.globalThis -> [object Window]
getter: Window.global -> undefined
getter: Window.globalThis -> [object Window]
getter: Window.process -> undefined
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.location -> [object Location]
getter: Location.href -> https://www.douyin.com/user/MS4wLjABAAAA5LTyMrmmGgrHuG39z-JpXX4TklrfYvYxHWWVidYrao4?from_tab_name=main&modal_id=7322042668907842867
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.document -> [object HTMLDocument]
getter: HTMLDocument.location -> [object Location]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.location -> [object Location]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.location -> [object Location]
getter: Location.valueOf -> function valueOf() { [native code] }
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.location -> [object Location]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.navigator -> [object Navigator]
getter: Navigator.userAgent -> Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/130.0.0.0 Safari/537.36
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.navigator -> [object Navigator]
getter: Navigator.platform -> Win32
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.encodeURIComponent -> function encodeURIComponent() { [native code] }
getter: Window.encodeURIComponent -> function encodeURIComponent() { [native code] }
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.navigator -> [object Navigator]
getter: Navigator.userAgent -> Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/130.0.0.0 Safari/537.36
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.encodeURIComponent -> function encodeURIComponent() { [native code] }
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.navigator -> [object Navigator]
getter: Navigator.vendorSubs -> {'ink': 1734081083965.0}
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.document -> [object HTMLDocument]
getter: HTMLDocument.all -> [object HTMLAllCollection]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.document -> [object HTMLDocument]
getter: HTMLDocument.all -> [object HTMLAllCollection]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.document -> [object HTMLDocument]
getter: HTMLDocument.all -> [object HTMLAllCollection]
getter: HTMLAllCollection.__proto__ -> [object HTMLAllCollection]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.HTMLAllCollection -> function HTMLAllCollection() { [native code] }
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.document -> [object HTMLDocument]
getter: HTMLDocument.all -> [object HTMLAllCollection]
getter: HTMLAllCollection.toString -> function toString() { [native code] }
getter: HTMLAllCollection.Symbol.toStringTag -> HTMLAllCollection
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.document -> [object HTMLDocument]
getter: HTMLDocument.all -> [object HTMLAllCollection]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.document -> [object HTMLDocument]
getter: HTMLDocument.all -> [object HTMLAllCollection]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.Error -> function Error() { [native code] }
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.screen -> [object Screen]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.screen -> [object Screen]
getter: Screen.__proto__ -> [object Screen]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.cefSharp -> undefined
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.CefSharp -> undefined
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.eoapi -> undefined
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.eoWebBrowserDispatcher -> undefined
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.navigator -> [object Navigator]
getter: Navigator.userAgent -> Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/130.0.0.0 Safari/537.36
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.navigator -> [object Navigator]
getter: Navigator.storage -> [object StorageManager]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.navigator -> [object Navigator]
getter: Navigator.storage -> [object StorageManager]
getter: StorageManager.estimate -> function estimate() { [native code] }
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.navigator -> [object Navigator]
getter: Navigator.storage -> [object StorageManager]
getter: StorageManager.estimate -> function estimate() { [native code] }
getter: Window.Promise -> function Promise() { [native code] }
method: StorageManager.fn_estimate() -> [object Promise]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.self -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.top -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.frames -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.outerWidth -> 1920
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.outerHeight -> 1032
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.innerWidth -> 1872
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.innerHeight -> 956
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.navigator -> [object Navigator]
getter: Navigator.userAgent -> Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/130.0.0.0 Safari/537.36
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.innerWidth -> 1872
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.innerHeight -> 956
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.outerWidth -> 1920
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.outerHeight -> 1032
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.screen -> [object Screen]
getter: Screen.availWidth -> 1920
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.screen -> [object Screen]
getter: Screen.availHeight -> 1032
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.screen -> [object Screen]
getter: Screen.width -> 1920
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.screen -> [object Screen]
getter: Screen.height -> 1080
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.navigator -> [object Navigator]
getter: Navigator.platform -> Win32
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.document -> [object HTMLDocument]
getter: HTMLDocument.all -> [object HTMLAllCollection]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.document -> [object HTMLDocument]
getter: HTMLDocument.all -> [object HTMLAllCollection]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.document -> [object HTMLDocument]
getter: HTMLDocument.all -> [object HTMLAllCollection]
getter: HTMLAllCollection.__proto__ -> [object HTMLAllCollection]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.HTMLAllCollection -> function HTMLAllCollection() { [native code] }
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.document -> [object HTMLDocument]
getter: HTMLDocument.all -> [object HTMLAllCollection]
getter: HTMLAllCollection.toString -> function toString() { [native code] }
getter: HTMLAllCollection.Symbol.toStringTag -> HTMLAllCollection
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.document -> [object HTMLDocument]
getter: HTMLDocument.all -> [object HTMLAllCollection]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.document -> [object HTMLDocument]
getter: HTMLDocument.all -> [object HTMLAllCollection]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.Error -> function Error() { [native code] }
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.screen -> [object Screen]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.screen -> [object Screen]
getter: Screen.__proto__ -> [object Screen]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.cefSharp -> undefined
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.CefSharp -> undefined
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.eoapi -> undefined
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.eoWebBrowserDispatcher -> undefined
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.navigator -> [object Navigator]
getter: Navigator.userAgent -> Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/130.0.0.0 Safari/537.36
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.navigator -> [object Navigator]
getter: Navigator.storage -> [object StorageManager]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.navigator -> [object Navigator]
getter: Navigator.storage -> [object StorageManager]
getter: StorageManager.estimate -> function estimate() { [native code] }
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.navigator -> [object Navigator]
getter: Navigator.storage -> [object StorageManager]
getter: StorageManager.estimate -> function estimate() { [native code] }
getter: Window.Promise -> function Promise() { [native code] }
method: StorageManager.fn_estimate() -> [object Promise]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.self -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.top -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.frames -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.outerWidth -> 1920
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.outerHeight -> 1032
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.innerWidth -> 1872
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.innerHeight -> 956
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.navigator -> [object Navigator]
getter: Navigator.userAgent -> Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/130.0.0.0 Safari/537.36
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.navigator -> [object Navigator]
getter: Navigator.pemrissions -> {'microphone': 'grnated'}
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.navigator -> [object Navigator]
getter: Navigator.pemrissions -> {'microphone': 'grnated'}
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.navigator -> [object Navigator]
getter: Navigator.__proto__ -> [object Navigator]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.navigator -> [object Navigator]
getter: Navigator.__proto__ -> [object Navigator]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.navigator -> [object Navigator]
getter: Navigator.__proto__ -> [object Navigator]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.globalThis -> [object Window]
getter: Window.navigator -> [object Navigator]
getter: Navigator.__proto__ -> [object Navigator]
getter: Window.globalThis -> [object Window]
getter: Window.performance -> [object Performance]
getter: Performance.now -> function now() { [native code] }
method: Performance.fn_now() -> 391.953369140625
setter: Window.a_bogus = QyU5hH6idx8nOVoYYCjVy-NlOo9/rBWyFeiQbCnPt3/9b1UPpRN/iNSOaxqesIE7X8pikq17Bne/bDVcFzUhZqHpqmkvS2UWr0VAn6XoZqiRbUTBDqbLeLXzqwBr0cGqeA5vi1U60UJo6fnAiNQE/dA9tKLCQRuBM1xRk2YbE9s6ZFLAg1crPQbgxhsqME==
getter: XMLHttpRequest.bdmsInvokeList -> [{'args': ['GET', 'https://www-hj.douyin.com/aweme/v1/web/comment/list/reply/?device_platform=webapp&aid=6383&channel=channel_pc_web&item_id=7322042668907842867&comment_id=7322081223559103272&cut_version=1&cursor=0&count=3&item_type=0&update_version_code=170400&pc_client_type=1&pc_libra_divert=Windows&version_code=170400&version_name=17.4.0&cookie_enabled=true&screen_width=2560&screen_height=1080&browser_language=zh-CN&browser_platform=Win32&browser_name=Chrome&browser_version=130.0.0.0&browser_online=true&engine_name=Blink&engine_version=130.0.0.0&os_name=Windows&os_version=10&cpu_core_num=16&device_memory=8&platform=PC&downlink=10&effective_type=4g&round_trip_time=0&webid=7446688975144207935&msToken=HNHnOv7Uj61s8j-Y7...&a_bogus=QyU5hH6idx8nOVoYYCjVy-NlOo9%2FrBWyFeiQbCnPt3%2F9b1UPpRN%2FiNSOaxqesIE7X8pikq17Bne%2FbDVcFzUhZqHpqmkvS2UWr0VAn6XoZqiRbUTBDqbLeLXzqwBr0cGqeA5vi1U60UJo6fnAiNQE%2FdA9tKLCQRuBM1xRk2YbE9s6ZFLAg1crPQbgxhsqME%3D%3D', True], 'func': function(){}}, {'args': ['Accept', 'application/json, text/plain, */*'], 'func': function(){}}, {'args': ['bd-ticket-guard-web-version', 2], 'func': function(){}}, {'args': ['bd-ticket-guard-version', 2], 'func': function(){}}, {'args': ['bd-ticket-guard-iteration-version', 1], 'func': function(){}}]
call method -> xml_http_request.py ->null XMLHttpRequest.send(null,)
method: XMLHttpRequest.fn_send(null,) -> undefined
getter: Window.a_bogus -> QyU5hH6idx8nOVoYYCjVy-NlOo9/rBWyFeiQbCnPt3/9b1UPpRN/iNSOaxqesIE7X8pikq17Bne/bDVcFzUhZqHpqmkvS2UWr0VAn6XoZqiRbUTBDqbLeLXzqwBr0cGqeA5vi1U60UJo6fnAiNQE/dA9tKLCQRuBM1xRk2YbE9s6ZFLAg1crPQbgxhsqME==
python发送请求
python
import requests
ms_token = "HNHnOv7Uj61s8j-Y7WllQC..."
ttwid = "1%7CSLDpi8BebvqIDx..."
url = f"https://www-hj.douyin.com/aweme/v1/web/comment/list/reply/?device_platform=webapp&aid=6383&channel=channel_pc_web&item_id=7322042668907842867&comment_id=7322081223559103272&cut_version=1&cursor=0&count=3&item_type=0&update_version_code=170400&pc_client_type=1&pc_libra_divert=Windows&version_code=170400&version_name=17.4.0&cookie_enabled=true&screen_width=2560&screen_height=1080&browser_language=zh-CN&browser_platform=Win32&browser_name=Chrome&browser_version=130.0.0.0&browser_online=true&engine_name=Blink&engine_version=130.0.0.0&os_name=Windows&os_version=10&cpu_core_num=16&device_memory=8&platform=PC&downlink=10&effective_type=4g&round_trip_time=0&webid=7446688975144207935&msToken={ms_token}"
# 调用get_a_bogus获取a_bogus值
a_bogus = ctx.get_a_bogus(url)
url += f"&a_bogus={a_bogus}"
# user-agent和补环境的ua保持一致
res = requests.get(
url,
headers={
"referer": "https://www.douyin.com/",
"user-agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/130.0.0.0 Safari/537.36",
},
cookies={
"ttwid": ttwid,
}
)
print(res.text)
声明
仅用于学习,请勿用于商业用途。