Python调用原生javascript两种方式

el/2024/3/1 14:39:00

一、接口调用

node_server.js

var express = require('express');
var douban = require('./test');
var app = express();
const multipart = require('connect-multiparty')
const multipartyMiddleware = multipart()app.post('/test', multipartyMiddleware, (req, res) => {var result = douban.get_page(req.body.p1)res.send(result)
})app.listen(23341, function () {
})

test.js

function get_page(arg){console.log(arg)return "get "+arg
}module.exports = {get_page
}

二、Python直接调用js文件

test.py

from nodejs.bindings import node_runstderr, stdout = node_run("test.js", "test")
print stdout

test.js

function get_page(arg){return "get "+arg
}
// NodeJS获取命令行后面的参数
// 假设有如下的命令行 node test.js arg1 arg2 arg3,
// 现在想在test.js中获取后面的参数arg1、arg2、arg3…
var arguments = process.argv.splice(2)
// console.log(arguments[0])
console.log(get_page(arguments[0]))
console.log("公众号:虫术")
Blog:http://404nofoundx.top/

http://www.ngui.cc/el/3376902.html

相关文章

Unidbg(一)环境安装及配置

一、环境准备 1、IntelliJ IDEA 直接官网下载就可以 2、Maven环境 官网:https://maven.apache.org/download.cgi 解压文件: tar -zxvf apache-maven-3.5.4-bin.tar.gz配置环境变量: export MAVEN_HOME/usr/local/apache-maven-3.8.4 e…

20211208 | Leetcode每日算法

咬定青山不放松,立根原在破岩中。 千磨万击还坚劲,任尔东西南北风。 0x001、两数之和 地址:https://leetcode-cn.com/problems/two-sum/ 方法一、暴力循环 class Solution:def twoSum(self, nums: List[int], target: int) -> List[int…

Docker布置mitmproxy镜像使用Python脚本拦截请求

​mitmproxy 就是用于 MITM 的 proxy,MITM 即中间人攻击(Man-in-the-middle attack)。用于中间人攻击的代理首先会向正常的代理一样转发请求,保障服务端与客户端的通信,其次,会适时的查、记录其截获的数据&…

20211209|每日算法—最接近的三数之和

疾风知劲草,板荡识诚臣。 勇夫安识义,智者必怀仁。 0x001、最接近的三数之和 地址:https://leetcode-cn.com/problems/3sum-closest/ 给你一个长度为 n 的整数数组 nums 和 一个目标值 target。请你从 nums 中选出三个整数,使它…

scrapy爬虫框架基本介绍

一、介绍 Scrapy 是一种快速的高级 web crawling 和 web scraping 框架,用于对网站进行爬网并从其页面提取结构化数据。它可以用于广泛的用途,从数据挖掘到监控和自动化测试。 二、架构 三、组件 Scrapy Engine 引擎负责控制数据流在系统中所有组件中…

smali语法基础详解

一、介绍 apk文件通过apktool反编译出来的都有一个smali文件夹,里面都是以.smali结尾的文件。 smali语言是Davlik的寄存器语言,语法上和汇编语言相似,Dalvik VM与JVM的最大的区别之一就是Dalvik VM是基于寄存器的。基于寄存器的意思是&#…

安卓逆向 | 某社交类APP shield

*本文章仅供学习交流,切勿用于非法通途,如有侵犯贵司请及时联系删除 一、分析执行流程 initializeNative()---->cPtr = initialize(str)----->intercept(Interceptor.Chain chain, long j2) 二、Unidbg public class xhs extends AbstractJni {private final Andro…

安卓逆向 | 某社交类APP gsid

*本文章仅供学习交流,切勿用于非法通途,如有侵犯贵司请及时联系删除 一、目标参数 gsid 二、抓包 表单里面必要的几个参数checktoken、mfp、appkey,其中appkey是固定值。 0x01、checktoken jadx搜索checktoken,跟进去发现个b方法,用r0tracer hook一下这个方法,根据抓…

安卓逆向 | 某新闻类APP sign

*本文章仅供学习交流,切勿用于非法通途,如有侵犯贵司请及时联系删除 一、抓包 POST请求,url和header里面都携带一个sign,url中的sign猜测可能是根据From表单进行的加密,修改参数,显示签名错误,header里面可能是根据时间戳进行的加密。 二、Header中的sign 1、Java层分…

安卓逆向 | 某新闻类APP sn

*本文章仅供学习交流,切勿用于非法通途,如有侵犯贵司请及时联系删除 一、抓包 通过抓包,然后转换成python代码,通过删除字段的方式确定加密参数为 st:猜测为时间戳sn:猜测根据时间戳加密二、脱壳 查壳工具查看有壳,用Frida-DEXDump脱壳,不会的可以点击传送门,开箱即用…