0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

Python怎么玩轉(zhuǎn)JS腳本

汽車電子技術(shù) ? 來源:Python數(shù)據(jù)分析之旅 ? 作者: cauwfq ? 2023-02-23 16:26 ? 次閱讀

圖片

一.項目背景

本項目旨在讓大家了解如何用Python來執(zhí)行JS腳本,其主要目的是在進(jìn)行數(shù)據(jù)
分析時,需要利用爬蟲獲取數(shù)據(jù),有時會遇到JS混淆加密反爬取難點,此時我們需
要獲取網(wǎng)頁JS加密代碼將其轉(zhuǎn)換為Python代碼運行,從而破解JS加密

二.環(huán)境準(zhǔn)備

1.安裝:pip install PyExecJS  -i https://pypi.tuna.tsinghua.edu.cn/simple
2.運行環(huán)境:nodejs推薦),Phantomjs

三.實現(xiàn)過程

1)執(zhí)行JS語句
import execjs




#輸出當(dāng)前運行環(huán)境
print(execjs.get().name)
#輸出當(dāng)前年份
print(execjs.eval('''
         new Date().getFullYear()
         '''))

圖片

2)執(zhí)行JS函數(shù)


#編寫JS代碼
content='''
function myFunction(a,b){
    var c=a+b;
    return c;}
'''
#編譯JS代碼
jsdata=execjs.compile(content)
#調(diào)用函數(shù)
res=jsdata.call('myFunction',1,2)
#輸出結(jié)果
print('函數(shù)運行結(jié)果:',res)

圖片

3)執(zhí)行JS文件
  》》建立test.js文件
  》》讀入文件執(zhí)行腳本

圖片

#讀入JS腳本文件
with open('test.js','r',encoding='utf-8') as f:
    content=f.read()
#編譯JS代碼
jsdata=execjs.compile(content)
#調(diào)用函數(shù)
res=jsdata.call('myFunction',1,2)
#輸出結(jié)果
print('文件中函數(shù)運行結(jié)果:',res)

圖片

以上是本項目所有內(nèi)容,感謝大家閱讀,也希望大家學(xué)有所獲,在此也給大家拜個晚年,祝大家新年快樂~~
聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • JS
    JS
    +關(guān)注

    關(guān)注

    0

    文章

    78

    瀏覽量

    18034
  • 代碼
    +關(guān)注

    關(guān)注

    30

    文章

    4694

    瀏覽量

    68075
  • python
    +關(guān)注

    關(guān)注

    54

    文章

    4756

    瀏覽量

    84283
收藏 人收藏

    評論

    相關(guān)推薦

    基于Python腳本的R語言的函數(shù)

    本文介紹了采用創(chuàng)建一個Python腳本,用該腳本模仿R風(fēng)格的函數(shù)的方法來方便地進(jìn)行統(tǒng)計。 是用R語言還是用Python語言?這是一個曠日持久的爭論。在此,我們可以嘗試采用折中路線:創(chuàng)建
    的頭像 發(fā)表于 10-12 09:33 ?2046次閱讀
    基于<b class='flag-5'>Python</b><b class='flag-5'>腳本</b>的R語言的函數(shù)

    10個殺手級的Python自動化腳本

    今天浩道跟大家分享10個日常工作中用到的python自動化腳本。讓你感受一番python簡單強大之處!
    發(fā)表于 11-28 11:07 ?658次閱讀

    13個用于日常編程的高級Python腳本

    今天浩道跟大家分享13個用于日常編程的高級python腳本。讓你不會寫腳本的也能感受到其魅力!
    發(fā)表于 12-09 11:47 ?595次閱讀

    通過Python腳本實現(xiàn)WIFI密碼的自動猜解

    本文將記錄學(xué)習(xí)下如何通過 Python 腳本實現(xiàn) WIFI 密碼的自動猜解。
    的頭像 發(fā)表于 01-25 10:46 ?3016次閱讀
    通過<b class='flag-5'>Python</b><b class='flag-5'>腳本</b>實現(xiàn)WIFI密碼的自動猜解

    使用 Python 執(zhí)行 js 代碼

    為什么要引出Python執(zhí)行js這個問題?都說術(shù)業(yè)有專攻,每個語言也都有自己的長處和短處。在爬蟲方向,Python絕對是扛把子,近幾年隨著AI的火爆,需要各種各樣的數(shù)據(jù),所以,爬蟲需求也跟著
    發(fā)表于 03-31 16:05

    如何在 IIS 中執(zhí)行 Python 腳本

    如何在 IIS 中執(zhí)行 Python 腳本 Python 是一種解釋腳本語言,概念類似 Microsoft Visual Basic Scripting Edition (VBSc
    發(fā)表于 02-23 15:13 ?1235次閱讀

    python編寫腳本方法

    對于具有484個引腳的芯片,如果手動一個一個設(shè)置引腳,必然是一場噩夢。網(wǎng)上有使用Capture進(jìn)行自動導(dǎo)入的帖子,不過沒有找到AD方面的帖子。本文使用python,編寫腳本,自動分配引腳。
    發(fā)表于 11-17 11:38 ?4913次閱讀

    如何使html網(wǎng)頁與python腳本進(jìn)行通信

    現(xiàn)在運行python腳本并轉(zhuǎn)到http://localhost/或http://localhost/并開始按下按鈕,您應(yīng)該會在python腳本上看到輸入。
    的頭像 發(fā)表于 11-04 10:12 ?7800次閱讀

    基于Python的實時嵌入式軟件測試腳本總結(jié)

    基于Python的實時嵌入式軟件測試腳本總結(jié)(嵌入式開發(fā)技術(shù)棧)-該文檔為基于Python的實時嵌入式軟件測試腳本總結(jié)文檔,是一份很不錯的參考資料,具有較高參考價值,感興趣的可以下載看
    發(fā)表于 07-30 12:31 ?28次下載
    基于<b class='flag-5'>Python</b>的實時嵌入式軟件測試<b class='flag-5'>腳本</b>總結(jié)

    Python】如何將Python腳本打包成exe可執(zhí)行文件

    Python實用技巧】如何將Python腳本打包成exe可執(zhí)行文件?
    的頭像 發(fā)表于 08-18 12:40 ?1.8w次閱讀
    【<b class='flag-5'>Python</b>】如何將<b class='flag-5'>Python</b><b class='flag-5'>腳本</b>打包成exe可執(zhí)行文件

    通過Python腳本實現(xiàn)WIFI密碼的暴力破解

    本文將記錄學(xué)習(xí)下如何通過 Python 腳本實現(xiàn) WIFI 密碼的暴力破解。
    的頭像 發(fā)表于 09-19 09:55 ?6569次閱讀

    分享Perl和Python腳本輕量實用的調(diào)試工具

    Perl和Python作為目前芯片開發(fā)流程中最為流行的腳本語言,本文將分別介紹它們輕量且實用的調(diào)試工具(Debugger),讓你在調(diào)試腳本的時候不再抓瞎。
    的頭像 發(fā)表于 01-21 17:25 ?1832次閱讀
    分享Perl和<b class='flag-5'>Python</b><b class='flag-5'>腳本</b>輕量實用的調(diào)試工具

    如何破解JS加密?

    學(xué)習(xí)爬蟲最難之一無非就是如何破解JS加密,但是關(guān)于JS加密的網(wǎng)上資料非常零散雜亂,本人對這方面也略有研究,本篇文章在之前兩篇文章[Python玩轉(zhuǎn)J
    的頭像 發(fā)表于 02-24 14:57 ?1887次閱讀
    如何破解<b class='flag-5'>JS</b>加密?

    如何在Linux命令行中運行Python腳本

    Python 腳本。 在本文中,我們將詳細(xì)介紹如何在 Linux 命令行中運行 Python 腳本。我們將討論以下主題:
    的頭像 發(fā)表于 05-12 14:49 ?1615次閱讀

    Python調(diào)用JS的 4 種方式

    Python 實現(xiàn) 本文將聊聊利用 Python 調(diào)用 JS 的4種方式 2. 準(zhǔn)備 以一段簡單的 JS 腳本為例,將代碼寫入到文件中
    的頭像 發(fā)表于 10-30 09:41 ?632次閱讀