python3.6中使用web.py创建简单webservice并使用pyinstaller打包成可执行程序
1.windows 环境搭建
-
python版本3.6 安装:下载地址 ,安装过程中选择完全安装,并且勾选“将python添加到path中”。
-
安装web.py:因为我使用pip 安装web.py时,报好多依赖相关的错,所以建议:使用easy_install web.py命令去安装
-
安装pyinstaller:pip install pyinstaller
2. code 文件名为:myWebserver.py
import web
urls = (
'/', 'index' #页面路由,当在在浏览http://localhost:8080/时,会定位到index实体。第一个 参数为:正则匹配的路由,第二个参数为路由匹配的实体。
)
class index: #必须跟路由定位的实体拥有相同的名字。
def GET(self):
return "Hello, world!"
if __name__ == "__main__":
app = web.application(urls, globals())
app.run()
关于web.pyg更多实例请参考http://webpy.org/docs/0.3/tutorial
3.打包为可执行程序
- pyinstaller -F myWebserver.py --hidden-import web.wsgiserver.wsgiserver3 --hideden-import myWebserver
4.测试api
- 双击启动myWebserver,在终端上会看到“http://0.0.0.0:8080”,在浏览器输入“http://localhost:8080/”,会看到页面会返回“Hello, world!”。
- 在cmd中输入python myWebserver,也可以启动测试。
注意事项:
打包可执行程序时,可能会报缺少“web.wsgiserver.wsgiserver3”,所以得添加 --hidden-import web.wsgiserver.wsgiserver3;还有必须也得把当前的webservice模块打包,否则会报“缺少index module”。