一、vid值分析
1、F12开发者工具抓包,全局搜索vid,所有vid下断,最终确定这一个关键点
2、刷新页面,在此处断了下来,t来自于该函数M()(window.location.href)
window.location.href:获取url的地址
3、跟进M函数查看,通过这段代码即可取出vid的值
4、JS实现获取vid
function aiyou(t, e) { var n={} var r = n[t] || {}; if (t) { var o = t.indexOf("?"); if (o >= 0) { var i = t.slice(o + 1, t.length); (i = i.replace(/#.*/, "")).split("&").forEach((function(t) { var e = t.indexOf("="); if (e > 0) { var n = t.slice(0, e) , o = t.slice(e + 1, t.length); r[n] = o } } )) } n[t] = r } return e ? r[e] || "" : r }
二、获取固定的时间格式
import time def get_ctime(): now = time.time() print(now) l_time = time.localtime(now) print(l_time) f_time = time.strftime("%Y-%m-%d %H:%M:%S",l_time) return f_time ctime=get_ctime() print(ctime)
三、最终python代码实现
import time import execjs def get_ctime(): now = time.time() print(now) l_time = time.localtime(now) print(l_time) f_time = time.strftime("%Y-%m-%d %H:%M:%S",l_time) return f_time ctime=get_ctime() print(ctime) url='https://w.yangshipin.cn/video?type=0&vid=o000017kuww&channel=m_h5&channel_origin=m_h5' def getvid(url): node = execjs.get() fp = open('./jiami.js', 'r', encoding='utf-8') ctx = node.compile(fp.read()) ret = ctx.eval("aiyou('%s')" % url) return ret['vid'] vid=getvid(url) print(vid) 参数={ "ctime":ctime, "ua":"mozilla/5.0 (windows nt 10.0; win64; x64) applewebkit/537.36 (khtml, like gecko) chrome/112.0.0.0 safari/537.36", "hh_ua":"mozilla/5.0 (windows nt 10.0; win64; x64) applewebkit/537.36 (khtml, like gecko) chrome/112.0.0.0 safari/537.36", "platform":"4330701", "guid":"lhq1oezr_kleoxtxxsd", "Pwd":"1698957057", "version":"wc-1.25.0", "url":"https://w.yangshipin.cn/video?type=0&vid=o000017kuww&channel=m_h5&channel_origin=m_h5", "hh_ref":"https://w.yangshipin.cn/video?type=0&vid=o000017kuww&channel=m_h5&channel_origin=m_h5", "vid":vid, "isfocustab":"1", "isvisible":"1", "idx":"0", "val":"1046", "pid":"lhq1pku9_6f9kyp4ykcf", "bi":"0", "bt":"0", "defn":"hd", "vurl":"https://mp4playali-cdn.ysp.cctv.cn/o000017kuww.jbZe10002.mp4?sdtfrom=4330701&guid=lhq1oezr_kleoxtxxsd&vkey=71B322817DFA1F51DDA2EA67F315D619CFA9FC2F3D4408FA24ADFE853F87D7DD90DE01AE77D1D2059D1A877C80BFF781D0A087718AA371D6E7A7F713F824B63C39AA31EDE610545602904F26009F7256415C2D1A88F5C7EE9E008B1989F1BDD0807707CED85EA7D4426B75C3780D9380A34C7BB3E31FD663F92E8441085C8478&platform=2", "step":"6", "val1":"1", "val2":"1", "fact1":"", "fact2":"", "fact3":"", "fact4":"", "fact5":"", }