Skip to content

zzhaolei/PyV8

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

7 Commits
 
 
 
 
 
 
 
 

Repository files navigation

PyV8

PyV8是对V8引擎的Python封装, 可以直接渲染JS.

官方在Windows平台上的更新已经止步于Python 2.7版本, 版本号为1.0-preview. 在Linux平台, 最新版本为Python 2.6, 但是只有64位版本, 32位版本支持Python 2.5, 版本号为0.9

Windows

根据系统位数(右键我的电脑-->属性-->系统类型中查看), 双击运行Windows目录中对应的*.exe安装包, 在Windows上直接进行安装(需要先安装了Python 2.7, 软件会自动检测PythonPath路径).

PS: 注意Python是32还是64位, 如果Python是32位的, 系统是64位的, 在安装时需要选择只为 当前用户 安装, 否则安装PyV8时, 会提示register表没有路径.

Linux

Linux同理, 根据系统版本选择i686或者x86_64.tar.gz, , 将Linux目录下的PyV8-0.9.linux-xxxx.tar.gz解压(tar -xzvf PyV8-0.9.linux-xxxx.tar.gz, 解压到当前目录), 将解压后的路径为./usr/local/lib/python2.6/site-packages/文件夹下的所有内容, 拷贝到Python安装目录下的lib/site-packages/下面. 如果是虚拟环境, 就拷贝到虚拟环境目录下的lib/site-packages.

PyV8-0.9.tar.gz是源码包, 可以解压后使用python setup.py install安装

linux上需要安装系统依赖

主要是依赖boots相关的软件包.

Debian/Ubuntu:

sudo apt-get install scons libboost-dev libboost-thread-dev libboost-system-dev python-dev libboost-python-dev 

Fedora/CentOS:

sudo yum install scons python-devel boost-devel boost-python -y

使用示例

# -*- coding:utf-8 -*-

from PyV8 import JSContext


# 创建JSContext对象并进入
js = JSContext()
js.__enter__()

# script是字符串
js.eval(script)

# 调用JS中的函数, Func为JS中的函数名
func = js.locals.Func

# 执行
Func()

# 调用JS中的变量, result是JS中的变量名
r = str(js.eval('result'))
print r

About

PyV8是对V8引擎的Python封装,可以直接渲染JS

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published