Python可以搭建pywebsocket(Web服务器,python websocket),搭建pywebsocket必须要已经安装了python,点我查看python的下载与安装。在这篇Blog中总结了Python3.2和python3.3的常用语法差别,以及搭建过程中的常见错误。笔者使用的是Windows8.1。

下载 mod_pywebsocket

点我下载mod_pywebsocket。这里需要读者注意,本链接的mod_pywebsocket文档是3.2的。

安装pywebsocket

  • 打开解压文件,进入到pywebsocket-master包中
  • 执行命令

      python setup.py install

开启Web服务

  • 执行命令

        python standalone.py -p 9998 -w ../example/

错误

你可能在执行命令的时候遇上这样那样的错误,比如语法错误(invalid Error)、缩进错误(IndentationError)、无法找到某个块等等。这些错误很有可能是下载的mod_pywebsocket文档和安装的python版本对不上。

Python2到Python3常用属性的转变:

Python2 Python3
BaseHTTPServer http.server
CGIHTTPServer http.server
SimpleHTTPServer http.server
SocketServer socketserver
ConfigerParser configerparser
httplib http.client
urlparse urllib.parse
sys.maxint 弃用
Queue 如果是import引用就写成:
from multiprocessing import Queue
StringIO 如果是import引用就写成:
from io import StringIO

如果读者的Python为3.0,然而mod_pysocket为2.0的话,可以手动将mod_pysocket中不符合python3.0的语法改过来,不过读者建议下载对应的版本。在Python3.0中,开启一个自定义的web服务:

  python standalone.py -p 9998 -w ../example/ 

以上命令开启一个端口号为 9998 的服务,使用 -w 来设置处理程序 echo_wsh.py 所在的目录。python有一个已经定义好的websocket服务器,在CMD中输入

python -m http.server 9998

就可通过python自动包建立服务器。
        在浏览器中输入 http://localhost:9998 就可以访问了。

参考文档

http://www.runoob.com/html/html5-intro.htmlhttp://www.runoob.com/python3/python3-basic-syntax.htmlhttp://www.jb51.net/os/windows/288116.htmlhttps://docs.python.org/2/library/cgihttpserver.htmlhttps://docs.python.org/2/library/basehttpserver.htmlhttps://docs.python.org/3.1/whatsnew/3.0.html#integershttp://www.cnblogs.com/xuxn/archive/2011/02/14/build-simple-web-server-with-python.html

pywebsocket的搭建的更多相关文章

  1. Online Judge(OJ)搭建(第一版)

    搭建 OJ 需要的知识(重要性排序): Java SE(Basic Knowledge, String, FileWriter, JavaCompiler, URLClassLoader, Secur ...

  2. Angular2入门系列教程1-使用Angular-cli搭建Angular2开发环境

    一直在学Angular2,百忙之中抽点时间来写个简单的教程. 2016年是前端飞速发展的一年,前端越来越形成了(web component)组件化的编程模式:以前Jquery通吃一切的田园时代一去不复 ...

  3. 总结:Mac前端开发环境的搭建(配置)

    新年新气象,在2016年的第一天,我入手了人生中第一台自己的电脑(大一时好友赠送的电脑在一次无意中烧坏了主板,此后便不断借用别人的或者网站的).macbook air,身上已无分文...接下来半年的房 ...

  4. Angular企业级开发(5)-项目框架搭建

    1.AngularJS Seed项目目录结构 AngularJS官方网站提供了一个angular-phonecat项目,另外一个就是Angular-Seed项目.所以大多数团队会基于Angular-S ...

  5. 【分享】标准springMVC+mybatis项目maven搭建最精简教程

    文章由来:公司有个实习同学需要做毕业设计,不会搭建环境,我就代劳了,顺便分享给刚入门的小伙伴,我是自学的JAVA,所以我懂的.... (大图直接观看显示很模糊,请在图片上点击右键然后在新窗口打开看) ...

  6. 一起学微软Power BI系列-使用技巧(4)Power BI中国版企业环境搭建和帐号问题

    千呼万唤的Power BI中国版终于落地了,相信12月初的微软技术大会之后已经铺天盖地的新闻出现了,不错,Power BI中国版真的来了,但还有些遗憾,国际版的一些重量级服务如power bi emb ...

  7. 从0开始搭建SQL Server AlwaysOn 第一篇(配置域控)

    从0开始搭建SQL Server AlwaysOn 第一篇(配置域控) 第一篇http://www.cnblogs.com/lyhabc/p/4678330.html第二篇http://www.cnb ...

  8. 从0开始搭建SQL Server AlwaysOn 第二篇(配置故障转移集群)

    从0开始搭建SQL Server AlwaysOn 第二篇(配置故障转移集群) 第一篇http://www.cnblogs.com/lyhabc/p/4678330.html第二篇http://www ...

  9. 从0开始搭建SQL Server AlwaysOn 第三篇(配置AlwaysOn)

    从0开始搭建SQL Server AlwaysOn 第三篇(配置AlwaysOn) 第一篇http://www.cnblogs.com/lyhabc/p/4678330.html第二篇http://w ...

随机推荐

  1. XML序列化的时候如何支持Namespace

    我曾经不止一次(当然不仅仅是我意识到这个问题)说到过,XML标准中的Namespace的设计其实是一个较为失败的设计,它有它的优点,但缺点更多. http://zzk.cnblogs.com/s?w= ...

  2. 转载-centos网络配置(手动设置,自动获取)的2种方法

    转载地址:http://blog.51yip.com/linux/1120.html 重新启动网络配置 # service network restart 或 # /etc/init.d/networ ...

  3. 轻松自动化---selenium-webdriver(python) (十一)

    本节重点: 控制滚动条到底部 有时候我们需要控制页面滚动条上的滚动条,但滚动条并非页面上的元素,这个时候就需要借助js是来进行操作.一般用到操作滚动条的会两个场景: 注册时的法律条文需要阅读,判断用户 ...

  4. Testing - 测试基础 - 用例

    测试用例 是指对一项特定的软件产品进行测试任务的描述,体现测试方案.方法.技术和策略. 内容包括测试目标.测试环境.输入数据.测试步骤.预期结果.测试脚本等,并形成文档. 每个具体测试用例都将包括下列 ...

  5. Testing - 测试基础 - 方法

    选择和使用测试方法和工具 按照测试需求用途(或测试技巧)选择 在软件开发生命周期和软件测试流程中适当地选择 按照测试人员实际技能选择 选择可提供的和可执行的 测试方法 类别及技巧 目标 使用方法 举例 ...

  6. [工具]Serv-U配置教程

    引言 最近项目中需要用到ftp服务器,将文件放在ftp服务器上,就在网上查了一下,学习了一下Serv-u的配置及使用,这里也将如何配置的做一记录. Serv-u简介 Serv-U 是目前众多的FTP ...

  7. 新人学习Android开发遇到的小问题总结

    1. IDE搭建: 搭建android的IDE时,先注意是什么版本的系统,64/32位系统. 通常使用的是Eclipse for android,Android Studio由于还需要FQ,网速慢,所 ...

  8. JDK8 的 Lambda 表达式原理

    JDK8 使用一行 Lambda 表达式可以代替先前用匿名类五六行代码所做的事情,那么它是怎么实现的呢?从所周知,匿名类会在编译的时候生成与宿主类带上 $1, $2 的类文件,如写在 TestLamb ...

  9. redis学习教程之一基本命令

    参阅redis中文的 互动教程(interactive tutorial)来学习的. 目录: 全局操作 get  get incr  自增 del 删除 expire 定时 list  队列 set ...

  10. $("#id").val()取值textarea是""

    今天取值的时候,判断是null可以通过,证明不是null,明明是空的. 判断是''通过,证明取出来的是''空字符串.