|
50鱼币
- (function () {
- var c7f = NEJ.P, ev9m = c7f("nej.g"), v7o = c7f("nej.j"), j7c = c7f("nej.u"), Wx5C = c7f("nm.x.ek"),
- l7e = c7f("nm.x");
- if (v7o.be7X.redefine) return;
- window.GEnc = true;
- var bqN2x = function (cyC5H) {
- var m7f = [];
- j7c.bf7Y(cyC5H, function (cyB5G) {
- m7f.push(Wx5C.emj[cyB5G])
- });
- return m7f.join("")
- };
- var cyz5E = v7o.be7X;
- v7o.be7X = function (X7Q, e7d) {
- var i7b = {}, e7d = NEJ.X({}, e7d), mv1x = X7Q.indexOf("?");
- if (window.GEnc && /(^|\.com)\/api/.test(X7Q) && !(e7d.headers && e7d.headers[ev9m.Ae8W] == ev9m.Im0x) && !e7d.noEnc) {
- if (mv1x != -1) {
- i7b = j7c.gZ0x(X7Q.substring(mv1x + 1));
- X7Q = X7Q.substring(0, mv1x)
- }
- if (e7d.query) {
- i7b = NEJ.X(i7b, j7c.fT0x(e7d.query) ? j7c.gZ0x(e7d.query) : e7d.query)
- }
- if (e7d.data) {
- i7b = NEJ.X(i7b, j7c.fT0x(e7d.data) ? j7c.gZ0x(e7d.data) : e7d.data)
- }
- i7b["csrf_token"] = v7o.gP0x("__csrf");
- X7Q = X7Q.replace("api", "weapi");
- e7d.method = "post";
- delete e7d.query;
- var bVZ7S = window.asrsea(JSON.stringify(i7b), bqN2x(["流泪", "强"]), bqN2x(Wx5C.md), bqN2x(["爱心", "女孩", "惊恐", "大笑"]));
- e7d.data = j7c.cs8k({params: bVZ7S.encText, encSecKey: bVZ7S.encSecKey})
- }
复制代码 上面的是一部分的js代码..举个例子
我要怎么才能用execjs库调用这里面的函数呢? 都是被匿名函数function ()包着的 比如我想访问v7o.be7X 函数
普通访问
- def encodes(kw):
- path='1.js'
- with open(path, 'r', encoding='utf-8') as f:
- js = f.read()
- cx_js = execjs.compile(js)
- # 调用call方法去执行js代码
- a = cx_js.call("v7o.be7Xt", kw) # 第一个为函数名,后面的为参数,多的就用逗号隔开
- return a
- print(encodes(kw))
复制代码
会说缺少标识符 execjs._exceptions.ProgramError: SyntaxError: 缺少标识符 我参数填错是另外一回事,,这个可以慢慢调试..但是这个如何才能访问里面的函数呢 |
|