如何从PHP或Javascript调用python程序(具有命令行参数)
How do I call python program (which has command line arguments) from PHP or Javascript?
我的 Python 程序是,
from xbee import ZigBee
import serial
import sys
sPort = serial.Serial("/dev/ttyAMA0", 9600)
xbee = ZigBee(sPort)
targStr = sys.argv[1]
data = str(targStr)
print (data)
destAdd = "'x00'x13'xa2'x00'x40'xa9'xcc'xad"
xbee.send("tx",dest_addr_long=destAdd,dest_addr="'xff'fe",data=data)
print ("Sent!")
当我在 linux shell 上执行这个 python 程序时,它工作得很好!如何在HTML页面的某些事件上执行此程序(使用Javascript,AJAX或PHP)?
您需要将此代码嵌入到某个 Python Web 服务器中 - 例如 Flask。
请参阅以下示例 xbee_test.py(它非常原始,不要在生产环境中使用它):
from flask import Flask
app = Flask(__name__)
from xbee import ZigBee
import serial
sPort = serial.Serial("/dev/ttyAMA0", 9600)
xbee = ZigBee(sPort)
@app.route("/<data>")
def index(data):
destAdd = "'x00'x13'xa2'x00'x40'xa9'xcc'xad"
xbee.send("tx",dest_addr_long=destAdd,dest_addr="'xff'fe",data=data)
return "Sent!"
if __name__ == "__main__":
app.run()
现在,当你在Python中运行它并点击http//localhost:5000/test_data时,你会执行你的代码。
将其嵌入到HTML页面中,例如AJAX调用从这一点开始并不复杂。
以下是获取 Flask 安装并运行它的方法:
$ pip install Flask
$ python xbee_test.py
* Running on http://localhost:5000/
相关文章:
- 如何将.json文件作为参数导入.js文件并使用命令行启动它
- 将命令行参数发送到 npm 脚本
- 如何从PHP或Javascript调用python程序(具有命令行参数)
- 在 Gjs Gtk.Application 的命令行上处理作为参数传递的文件
- Nodejs 将命令行参数设置为常量
- 什么是使用 JSON 表示命令行参数的好方法
- 如何在v8中将命令行参数传递给脚本
- 如何将命令行参数传递给嵌套脚本
- 如何在Vertx中读取命令行参数
- JSON.将其字符串化,然后作为命令行参数发送
- 用于量角器指定环境的命令行参数
- 在V8 Javascript shell中传递命令行参数给脚本
- Java脚本命令行参数&地图
- 将命令行参数传递给emscripten生成的应用程序
- 命令行参数无效,验证您正在使用的交换机
- 从命令行输入、命令行参数 NPM 模块、node.js/javascript 获取值
- 获取命令行参数
- mongodb在js文件中的命令行参数
- 命令行参数到Node.js
- 命令行参数到在mongodb上工作的javascript文件