Python 执行js的2种解决方案

第1种方案

SpiderMonkey是Mozilla项目的一部分,是一个用C语言实现的JavaScript脚本引擎, 该引擎分析、编译和执行脚本,根据JS数据类型和对象的需要进行内存分配及释放操作;利用该引擎可以让你的应用程序具有解释JavaScript脚本的能力。

要想使用spidermonkey得先安装,方法如下:

cd /home/linuxany.com/

wget D:pic/2025-02-27/https://cdn.chuangxiangniao.com/2025/02/20250227115632752.gz -O- | tar xvz

立即学习“Python免费学习笔记(深入)”;

cd js/src

make -f Makefile.ref

mkdir -p /usr/include/smjs/ -v

cp *.{h,tbl} /usr/include/smjs/ -v

cd Linux_All_DBG.OBJ

cp *.h /usr/include/smjs/ -v

mkdir -p /usr/local/{bin,lib}/ -v

cp js /usr/local/bin/ -v

cp libjs.so /usr/local/lib/ -v

以上安装完成后,运行/usr/local/bin/js 就应该可以启动js解释运行引擎了.

python使用举例:

# coding:utf-8import osimport tempfiledef call_js(js):    f=tempfile.mktemp('sd', 'linuxany', '/tmp')    f2=tempfile.mktemp('sd', 'linuxany', '/tmp')                        fp=open(f,'w')    fp.write(js)    fp.close()                        cmd="/usr/local/bin/js  %s > %s" % (f,f2)                        os.system(cmd)    result=open(f2).read()    print resultif __name__ == "__main__":    code='''    function dF(s,n){        n=parseInt(n);        var s1=unescape(s.substr(0,n)+s.substr(n+1,s.length-n-1));        var t='';        for(var i=0;i第2种方案Python-Spidermonkey 这个Python模块允许执行Javascript相关功能,是python与javascript之间进行操作的桥梁,javascript的类,对象和函数都可以在Python中调用。它大量借鉴了克拉斯Jacobssen的JavaScript Perl模块,而这又是Mozilla的PerlConnect Perl的结合为基础。安装:svn checkout http://python-spidermonkey.googlecode.com/svn/trunk/ python-spidermonkey-read-only下载完后,先运行python setup.py build然后运行python setup.py install官方网站:http://code.google.com/p/python-spidermonkey/同时需要安装Pyrex模块,一个支持python和C语言混编的模块。装完后就用python其他模块一样使用即可。

登录后复制

   

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至253000106@qq.com举报,一经查实,本站将立刻删除。

发布者:PHP中文网,转转请注明出处:https://www.chuangxiangniao.com/p/2283100.html

(0)
上一篇 2025年2月27日 19:55:21
下一篇 2025年2月27日 00:42:26

AD推荐 黄金广告位招租... 更多推荐

相关推荐

  • 格式化和清洗数据的 Python 工具包

    世界很杂乱,来自现实世界的数据也一样杂乱。近来一份调查报告显示数据科学家60%的时间都花在整理数据上。不幸的是,57%的人认为这是工作中最头疼的一部分。 整理数据非常消耗时间,不过也有许多工具被开发出来让这关键的一步变得稍微可以忍受。Pyt…

    2025年2月27日
    200
  • 数据集合: list,tuple,dict,set

    python的数据集合有四种,即list,tuple,dict,set 列表,List List是Python中一种有序的可变的数据集合。它的元素可以被添加或则删除。List的表示方法是用一个[]将元素包含起来,元素间用,号分隔。例如[2,…

    编程技术 2025年2月27日
    200
  • python学习笔记-定义函数

    python中定义函数的关键词是def,例如定义一个叫my_function的函数我们可以这么定义, 其中括号内的x,y为传入的参数。 def my_function():    # function body 登录后复制 返回值 函数可以…

    编程技术 2025年2月27日
    200
  • Python: 你不知道的 super

    super() 的入门使用 在类的继承中,如果重定义某个方法,该方法会覆盖父类的同名方法,但有时,我们希望能同时实现父类的功能,这时,我们就需要调用父类的方法了,可通过使用 super 来实现,比如: class Animal(object…

    编程技术 2025年2月27日
    200
  • python递归函数

    函数就像一个盒子,将相关的一些功能打包成一个函数,以供调用。函数内部可以调用其他函数,也可以调用这个函数自身。如果一个函数在内部调用函数自身,那么这个就是递归函数。我们举一个简单的例子。数学中我们知道100的阶乘,100!=1009998&…

    编程技术 2025年2月27日
    200
  • python:Centos6下python2.7的安装

    1)编译安装python2.7 [root@mysql-master ~]# python -VPython 2.6.6查看python的版本信息(之前的yum是通过yum安装的)[root@mysql-master src]# wget …

    编程技术 2025年2月27日
    200
  • Python 字典操作

    今天开始打算每周都写点东西来记录自己的学习,自己mark一下。 字典是python中最灵活的内置数据结构,字典是无序的集合(字典的顺序随机是为了快速执行键查找),python采用最优化的散列算法来寻找键;字典类似于java中的map,但是没…

    编程技术 2025年2月27日
    200
  • Python+大数据计算平台,PyODPS架构搭建

    数据分析和机器学习 大数据基本都是建立在Hadoop系统的生态上的,其实一个Java的环境。很多人喜欢用Python和R来进行数据分析,但是这往往对应一些小数据的问题,或者本地数据处理的问题。如何将二者进行结合使其具有更大的价值?Hadoo…

    2025年2月27日 编程技术
    200
  • Python 性能分析工具简介

    性能分析和调优工具简介 总会遇到一个时候你会想提高程序执行效率,想看看哪部分耗时长成为瓶颈,想知道程序运行时内存和cpu使用情况。这时候你会需要一些方法对程序进行性能分析和调优。 By Context Manager 可以上下文管理器自己实…

    编程技术 2025年2月27日
    200
  • python 之浅谈接口的定义和抽象类以及抽象方法

    #_*_ coding:utf-8 _*_#知识点:接口的定义和抽象类以及抽象方法 ”’1、抽象类式啥?抽象类加上抽象方法就等于接口 2、接口的定义含义1、别人给你暴露一个URL,然后调用这个URL含义2、定义一个规范,不写具体实现,按照…

    编程技术 2025年2月27日
    200

发表回复

登录后才能评论