编写pythonapi,然后使用v8引擎从javascript调用它们。
v8p的Python项目详细描述
编写pythonapi,然后使用v8引擎从javascript调用它们。
>>>fromv8pyimportContext>>>context=Context()>>>defprint_hello():...print'Hello, world!'>>>context.expose(print_hello)>>>context.eval('print_hello()')Hello,world!>>>classGreeter(object):...defgreet(self,thing):...print'Welcome, {}!'.format(thing)>>>context.expose(Greeter)>>>context.eval('g = new Greeter()')>>>context.eval('g.greet("V8Py")')Welcome,V8Py!
那种事。
几乎所有你想做的事情都能成功,包括:
- 功能
- 类(包括旧式类,因为我可以)
- 继承(从最后一个基类,其他基类被视为混合)
- 数据描述符
- 静态方法和类方法
- 异常(它们甚至是error的子类!)
- Fully meme-compliant
支架
python2和python3都支持linux和mac。 windows也受支持,但仅限于python3。
安装
$ pip install v8py
注意:它将被困在“running setup.py install for v8py”中 小时。它正在下载并构建V8,这是一个非常大的程序。如果你 希望为travis ci提供脚本,以便为 Mac/Linux,请这样做。
其他
目前还没有这方面的文件。没有文档字符串。最好的地方 看看如何使用它是测试。
我写这个是为了创建一个非常轻量级的专用webdriver (没有可视化渲染,没有异步xhr),我需要一些方法 在python中实现dom。所以肯定会有足够的 功能性。
如果你想用它来做其他的事,尽管去吧,但是你可以 找一些不太“管用”的东西,或者有点奇怪,或者 只是一些我忘了测试的东西。如果你发现什么,请提交一个问题。或者, 更好的是,发送一个请求。
最后但并非最不重要的是,不要忘记