工欲善其事,必先利其器,我们先来进行 twisted 框架的安装,由于平时使用的都是 Windows 系统,那么下面我们就讲解下 Windows 下 twisted 框架的安装
(1)下载 twisted 框架,请根据你安装的 python 版本选中对应得到版本,下载地址:http://pan.baidu.com/s/1hsbJpas  下载之后打开即可安装,安装成功后,但在使用 twisted 时,即引入 twisted 时, 如:from twisted.python import log,运行时会提示 ImportError: Twisted requires zope.interface 3.6.0 or later: no module named
(2)下载 zope.interface-4.1.1-py2.7-win-amd64.egg,
  这是因为缺少 zope.interface,接下来安装 zope.interface,我选择的版本是4.1.1,其下载地址:http://pan.baidu.com/s/1hs8To6w,其他版本地址:https://pypi.python.org/pypi/zope.interface#downloads下载完成后将 zope.interface-4.1.1-py2.7-win-amd64.egg 文件拷贝到 python 安装目录下的 Scripts文件夹下,安装 zope 包还需要下载安装 setuptools 工具,下载地址:http://pan.baidu.com/s/1slKgne9
安装完setuptools后可以看到Scripe中多了easy_install.exe,如图:

安装 setuptools 工具,进入解压目录执行:python setup.py install,安装完之后进入 C:\Python27\Scripts,执行:easy_install.exe zope.interface-4.1.1-py2.7-win-amd64.egg,即可完成 zope 包的安装,如图:

亲测自此,twisted安装完成。

下面是twisted的简单使用,其中的日志模块:

from twisted.python import log
from twisted.internet import defer log.msg('This will not be logged, we have not installed a logger.')
log.startLogging(open(r"./test.log", 'ab'))
log.msg('Hello twisted.python.log!')
log.msg('This will be logged.')
log.err('This will be logged as an error.')
def bad_callback(result):
pass try:
bad_callback()
except:
log.err('The next function call will log the traceback as an error.')
log.err() d = defer.Deferred() def on_error(failure):
log.err('The next function call will log the failure as an error.')
log.err(failure) d.addCallback(bad_callback)
d.addErrback(on_error)
d.callback(True)
log.msg('End of example.')

twisted 使用的更多相关文章

  1. Mina、Netty、Twisted一起学(八):HTTP服务器

    HTTP协议应该是目前使用最多的应用层协议了,用浏览器打开一个网站就是使用HTTP协议进行数据传输. HTTP协议也是基于TCP协议,所以也有服务器和客户端.HTTP客户端一般是浏览器,当然还有可能是 ...

  2. Twisted随笔

    学习了socket后决定尝试使用框架,目标锁定了Twisted. 什么是Twisted? twisted是一个用python语言写的事件驱动的网络框架,他支持很多种协议,包括UDP,TCP,TLS和其 ...

  3. Python 安装Twisted 提示python version 2.7 required,which was not found in the registry

    由于我安装Python64位的,下载后没注册,安装Twisted时老提示“python version 2.7 required,which was not found in the registry ...

  4. Python - twisted web 入门学习之一

    原文地址:http://zhouzhk.iteye.com/blog/765884 python的twisted框架中带了一个web server: twisted web.现在看看怎么用. 一)准备 ...

  5. Twisted

    Twisted是一个事件驱动的网络框架,其中包含了诸多功能,例如网络协议,线程,数据库管理,网络操作,电子邮件等 事件驱动 一,注册事件 二,触发事件 自定义事件框架  event_fram.py # ...

  6. Mina、Netty、Twisted一起学(十):线程模型

    要想开发一个高性能的TCP服务器,熟悉所使用框架的线程模型非常重要.MINA.Netty.Twisted本身都是高性能的网络框架,如果再搭配上高效率的代码,才能实现一个高大上的服务器.但是如果不了解它 ...

  7. Mina、Netty、Twisted一起学(九):异步IO和回调函数

    用过JavaScript或者jQuery的同学都知道,JavaScript特别是jQuery中存在大量的回调函数,例如Ajax.jQuery的动画等. $.get(url, function() { ...

  8. Mina、Netty、Twisted一起学(七):发布/订阅(Publish/Subscribe)

    消息传递有很多种方式,请求/响应(Request/Reply)是最常用的.在前面的博文的例子中,很多都是采用请求/响应的方式,当服务器接收到消息后,会立即write回写一条消息到客户端.HTTP协议也 ...

  9. Mina、Netty、Twisted一起学(六):session

    开发过Web应用的同学应该都会使用session.由于HTTP协议本身是无状态的,所以一个客户端多次访问这个web应用的多个页面,服务器无法判断多次访问的客户端是否是同一个客户端.有了session就 ...

  10. Mina、Netty、Twisted一起学(五):整合protobuf

    protobuf是谷歌的Protocol Buffers的简称,用于结构化数据和字节码之间互相转换(序列化.反序列化),一般应用于网络传输,可支持多种编程语言. protobuf如何使用这里不再介绍, ...

随机推荐

  1. [C++程序设计]有默认参数的函数

    实参与形参的结合是从左至右顺序进行的.因此指定默认值的参数必须放在形参表列中的最右端,否 则出错.例如: void f1(float a,int b=0,int c,char d=′a′); //不正 ...

  2. python运维开发(十八)----Django(二)

    内容目录 路由系统 模版 Ajax model数据库操作,ORM 路由系统 django中的路由系统和其他语言的框架有所不同,在django中每一个请求的url都要有一条路由映射,这样才能将请求交给对 ...

  3. Happy 2004(快速幂+乘法逆元)

    Happy 2004 问题描述 : Consider a positive integer X,and let S be the sum of all positive integer divisor ...

  4. List是线程安全的吗?如果不是该怎么办呢?安全的List对性能的影响有多大呢?

    测试条件: 开启2个并行执行任务,往同一个list对象写入值 测试代码: ; static List<int> list = new List<int>(); static v ...

  5. GET POST方法长度限制

    GET POST方法长度限制   1.    Get方法长度限制 Http Get方法提交的数据大小长度并没有限制,HTTP协议规范没有对URL长度进行限制.这个限制是特定的浏览器及服务器对它的限制. ...

  6. IIS缺少文件的解决方法

    原文 http://cqyccmh.blog.163.com/blog/static/6068134720102211543944/ 今天解决了一个郁闷了很久的问题,之前实在没辙就只能重装系统,因为装 ...

  7. wget命令3(转载)

    Wget下载终极用法和15个详细的例子 Wget是一种很好用的因特网下载工具,他具有的很多特性是其他工具所不能比拟的,再者他是一个轻量级可配置的下载工具. 本文结合例子介绍Windows下wget的多 ...

  8. OpenCV MFC 模块间通信

    1. 新建MFC项目 点击完成. 2. 添加按钮 在"工具箱"中找到"Button"控件,添加至界面:  2. 配置opencv, 添加colordetecto ...

  9. 克隆虚拟机,如何将克隆虚拟的网卡设置为eth0

    1.先删掉/etc/udev/rules.d/70-persistent-net.rules文件里的eth0,并要记住eth1的那个网卡的mac地址等下要用.2.把那个eth1修改为eth03.编辑网 ...

  10. mysql跟踪提交的SQL语句

    http://www.cnblogs.com/wuyifu/p/3328024.html