环境构建

安装python2.7

安装Setup Tools

在https://pypi.python.org/pypi/setuptools获取安装脚本的链接http://peak.telecommunity.com/dist/ez_setup.py,下载并运行

使用Setup Tools自动下载安装webpy库

运行"C:\Python27\Scripts>easy_install.exe web.py"

手动下载安装pywin32库

http://sourceforge.net/projects/pywin32/files/pywin32/Build%20218/

下载并安装py2exe

编写脚本

WebServer.py

import web

class WebServer(web.auto_application):

def run(self, port, *middleware):

func = self.wsgifunc(*middleware)

return web.httpserver.runsimple(func, ('0.0.0.0', port))

app = WebServer()

##########################web services

class hello(app.page):

def GET(self):

return 'Hello,world'

class visit(app.page):

path = '/visit/.*'

def GET(self):

return 'you are visiting '+web.ctx.path

##########################

def main():

app.run(port=8089)

if __name__ == "__main__":

main()

WindowsService.py

import win32serviceutil

import win32service

import win32event

import thread

def log(message):

logger = file("e:\log.txt","a")

logger.write(message+"\r\n")

logger.close()

class WindowsService(win32serviceutil.ServiceFramework):

#这两行必须

_svc_name_ = ""

_svc_display_name_ = ""

def __init__(self, args):

win32serviceutil.ServiceFramework.__init__(self, args)

self.hWaitStop = win32event.CreateEvent(None, 0, 0, None)

def SvcStop(self):

self.ReportServiceStatus(win32service.SERVICE_STOP_PENDING)

win32event.SetEvent(self.hWaitStop)

def SvcDoRun(self):

import WebServer

thread.start_new(WebServer.main, ())

win32event.WaitForSingleObject(self.hWaitStop, win32event.INFINITE)

setup.py

# mysetup.py

from distutils.core import setup

import py2exe

setup(service=["WindowsService"])

编译独立可执行文件

python setup.py py2exe

安装成windows服务并运行

sc create MyPythonServer binPath= f:\desktop\dist\WindowsService.exe

sc start MyPythonServer

在浏览器中访问:”http://127.0.0.1:8089/visit/whatever“,结果显示"you are visiting /visit/whatever"

下载

参考

python访问REST

用Python实现CRUD功能REST服务

Getting RESTful with web.py

Web.py初探:安装与HelloWorld

使用py2exe制作免运行时的可执行文件

Web.py初探:安装与HelloWorld

Create win32 services using Python and py2exe

win10 python免安装_使用Python编写免安装运行时、以Windows后台服务形式运行的WEB服务器...相关推荐

  1. python crypto安装_关于python安装pip及crypto库

    Capture The Flag (CTF) 常用到的crypto库,有很多技术人员不知道怎么安装.而crypto库已经有三五年没有团队维护更新,网络上很多旧版安装方法不可用.本篇记录了作者安装pip ...

  2. python tkinter 安装_为Python安装tkinter

    Tkinter是python的GUI模块.您可以使用它在python中创建基于GUI的应用程序.Tkinter提供了几个GUI小部件,如按钮,菜单,画布,文本,框架,标签等,以开发桌面应用程序.虽然T ...

  3. python pdb 安装_入门 Python 调试器 pdb

    前言 调试线上的 Python 程序时,虽然 PyCharm 可以实现远程调试,但 pdb 才是最便捷的方式,本文简单介绍 pdb 工具的使用,希望各位除了掌握 PyCharm 调试技巧外,还可以掌握 ...

  4. 如何检测python是否安装_使用Python检查系统中是否安装了一个软件包?

    How can I check is some package is installed in my system. My system is Linux, but even better if it ...

  5. 儿童上网时间管控软件_GreenSurfOnline V0.1 使用说明 (以Windows后台服务形式存在,安装需要有一定电脑操作基础)...

    1.GreenSurfOnline配置文件,配置可以上网的时间断,上网的时间使用NTP时间,如果当前时间不在GreenSurfOnlineCfg.ini配置文件中, 不执行默认的关机命令(批处理文件, ...

  6. python 概率分布模型_使用python的概率模型进行公司估值

    python 概率分布模型 Note from Towards Data Science's editors: While we allow independent authors to publis ...

  7. python 查看当前目录_「Python」打包分发工具setuptools学习

    ❝ setuptools是python标准的打包分发工具,它可以将我们编写的python项目打包安装,这样其他同事就可以像调用标准库或python第三方库那样直接使用:也可以将项目上传到Pypi供更多 ...

  8. python培训班-Python培训机构_高品质Python线下开发培训班推荐-黑马程序员

    Python编程基础基础班1 课时:15天技术点:97项测验:2次学习方式:线下面授 学习目标 1.掌握Python开发环境基本配置|2.掌握运算符.表达式.流程控制语句.数组等的使用|3.掌握字符串 ...

  9. python 时间序列预测_使用Python进行动手时间序列预测

    python 时间序列预测 Time series analysis is the endeavor of extracting meaningful summary and statistical ...

最新文章

  1. Linux 查看文件大小
  2. javax.servlet.GenericServlet类(协议无关版本)
  3. 把度分秒的经纬度转换成十进制的经纬度的工具类
  4. 利用JSP内置的Application对象实现的网站引用计数
  5. 《帝王三部曲》——二月河
  6. 董长青(1980-),男,北京卡达克数据技术中心软件业务本部高级工程师,主要研究方向为大数据、车联网。...
  7. lombak-插件使用
  8. Python之路--协程/IO多路复用
  9. java常用类的特征_Java常用类-包装类
  10. python修改pdf内容_python3.6调整字体Python处理pdf文件库 - PyPDF2详解
  11. PaddleDetection 自定义VOC数据集进行目标检测
  12. 关于闰年和平年的每个月有多少天
  13. 《私募股权基金投资基础知识》---第九章
  14. 简单逆向26(c++函数修饰名,md5,动态调试,算法逆向)
  15. 软件工程与计算:第3章需求分析 测试
  16. java_vinson_03:java变量与常量
  17. window10 几款好用的屏幕录制制作动图工具
  18. 人工智能处理的几大基础任务、元宇宙和人工智能
  19. 定义python函数时如果函数中没有return语句_定义Python函数时,如果函数中没有return语句,则默认返回空值None。...
  20. 获取腾讯微博信息API

热门文章

  1. linux gradle仓库位置,如何在Android Studio中使用Gradle发布项目至Jcenter仓库
  2. 高级工程师java_Java从0到高级工程师
  3. apache php mysql环境搭建_Ubuntu+Apache+PHP+Mysql环境搭建(完整版)
  4. Neumorphism新拟物化控件设计灵感
  5. python中文字符串排序问题_Python字符串排序
  6. numactl:NETLINK示例源码
  7. 一周文章导读:架构图;服务器;CPU
  8. Linux内核空间内存申请函数kmalloc、kzalloc、vmalloc的区别
  9. PostgreSQL的登录、创建用户、数据库并赋权
  10. 【linux指令】dialog实现终端下的GUI-1