午夜剧场伦理_日本一道高清_国产又黄又硬_91黄色网战_女同久久另类69精品国产_妹妹的朋友在线

您的位置:首頁技術文章
文章詳情頁

python執行js代碼的方法

瀏覽:24日期:2022-06-19 17:49:26
目錄什么是js代碼混淆?正常代碼混淆代碼Python第三方包Execjs安裝執行js什么是js代碼混淆?正常代碼

我們現在看一段js代碼,代碼邏輯很簡單,就是拼接時間返回。

function formatDate(now) { var now = new Date(1230999938); var year=now.getFullYear(); var month=now.getMonth()+1; var date=now.getDate(); var hour=now.getHours(); var minute=now.getMinutes(); var second=now.getSeconds(); return year+'-'+month+'-'+date+' '+hour+':'+minute+':'+second;}

運行一下這段代碼,如下圖所示。

python執行js代碼的方法

混淆代碼

我隨便找了個在線的js代碼混淆網站。

js代碼

function formatDate(mz1){var KkkGDiH2=new window['x44x61x74x65'](1230999938);var tsk3=KkkGDiH2[’x67x65x74x46x75x6cx6cx59x65x61x72’]();var YMreyP4=KkkGDiH2[’x67x65x74x4dx6fx6ex74x68’]()+1;var Ozo5=KkkGDiH2[’x67x65x74x44x61x74x65’]();var QMYEc$eD6=KkkGDiH2[’x67x65x74x48x6fx75x72x73’]();var JfXVV_Akq7=KkkGDiH2[’x67x65x74x4dx69x6ex75x74x65x73’]();var $mP8=KkkGDiH2[’x67x65x74x53x65x63x6fx6ex64x73’]();return tsk3+'x2d'+YMreyP4+'x2d'+Ozo5+' '+QMYEc$eD6+'x3a'+JfXVV_Akq7+'x3a'+$mP8

上面這個真的不是我瞎寫的,混淆之后就是這樣子的,不信看圖片。

python執行js代碼的方法

可能我們會有個疑問,js代碼都成這玩意了,還能執行嗎? 答案是肯定的。即使js代碼非常亂,但還是可以執行的,結果跟上面的是一樣的。

這就造成了一個問題,我們在做爬蟲時,如果需要,多多少少可能都要研究一下js代碼,然后進行js解密一下,但是,但是,要是代碼都混淆成了這了,還怎么解?

一點邏輯都看不通了,基本上不可用Python按照js邏輯重寫出來了...

很巧,小編也是卡在這里...后來我就想,要是Python能執行js代碼就好了,不用管函數里面的邏輯了,只拿函數返回值就好了。

Python第三方包Execjs

可能是吧,不止我一個人遇到了這種情況,所以大佬們就開發出來這種工具包,用于執行js代碼。

安裝

在安裝之前,需要有node環境,這里就不舉栗子了,下一步下一步就好了。

pip3 install PyExecJS執行js

注:由于上述js代碼會生成window對象,并不能直接執行成功,需要額外的其他輔助,這里簡單的舉一下其他例子。

正常js代碼

function add(x, y) { return x + y;}

Python執行js代碼

import execjsctx = execjs.compile('''function add(x, y) { return x + y;}''')print(ctx.call('add', 1, 2))

執行結果如下圖所示:

python執行js代碼的方法

混淆js代碼

function add(bi1,Pl$2){return bi1+Pl$2}

Python執行混淆js代碼

import execjsctx = execjs.compile('''function add(bi1,Pl$2){return bi1+Pl$2}''')print(ctx.call('add', 1, 2))

執行結果如下圖所示:

python執行js代碼的方法

可以看到,即使再混淆,只要執行的是js代碼,都是沒啥問題的。

上述拼接時間返回的js混淆代碼也是可以執行的,但是它多了一個window對象,需要node安裝jsdom才行,由于網絡設置有問題,實在是下載不了舉例子,實在是抱歉。

或者使用selenium打開游覽器執行再返回也行,當然,速度更慢。

以上就是python執行js代碼的方法的詳細內容,更多關于python執行js代碼的資料請關注好吧啦網其它相關文章!

標簽: Python 編程
相關文章:
主站蜘蛛池模板: 国产原创视频在线观看 | 午夜毛片在线观看 | av资源在线看 | 亚洲女同一区二区 | 亚洲天堂一区在线观看 | www天天操 | 久久国产成人精品av | 日本在线一级片 | 成人免费视频国产 | 四虎成人在线观看 | 亚洲视频国产精品 | 一区二区三区四区在线免费观看 | 黄色福利 | 欧美黄色a | 欧美高清视频一区 | 久久网站免费 | 成人高清在线视频 | 又色又爽 | 日本一级在线观看 | 日韩一区二区在线观看视频 | 午夜影视网 | 欧美肥老妇视频九色 | 日本美女一区二区 | 香蕉视频在线看 | 欧美香蕉视频 | 四虎精品在永久在线观看 | 日韩视频专区 | 蜜桃视频黄色 | 视频一区二区在线观看 | 久久国产精品免费 | www久久久久久久 | 日韩三区 | 蜜桃视频网站在线观看 | 日韩六区| 成人毛片100免费观看 | 欧美日韩中文字幕在线视频 | 亚洲性久久| 国产在线观看免费网站 | 伊人免费在线 | 可以在线观看av的网站 | 日韩中文字幕在线视频 |