twisted 使用
工欲善其事,必先利其器,我们先来进行 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 使用的更多相关文章
- Mina、Netty、Twisted一起学(八):HTTP服务器
HTTP协议应该是目前使用最多的应用层协议了,用浏览器打开一个网站就是使用HTTP协议进行数据传输. HTTP协议也是基于TCP协议,所以也有服务器和客户端.HTTP客户端一般是浏览器,当然还有可能是 ...
- Twisted随笔
学习了socket后决定尝试使用框架,目标锁定了Twisted. 什么是Twisted? twisted是一个用python语言写的事件驱动的网络框架,他支持很多种协议,包括UDP,TCP,TLS和其 ...
- 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 ...
- Python - twisted web 入门学习之一
原文地址:http://zhouzhk.iteye.com/blog/765884 python的twisted框架中带了一个web server: twisted web.现在看看怎么用. 一)准备 ...
- Twisted
Twisted是一个事件驱动的网络框架,其中包含了诸多功能,例如网络协议,线程,数据库管理,网络操作,电子邮件等 事件驱动 一,注册事件 二,触发事件 自定义事件框架 event_fram.py # ...
- Mina、Netty、Twisted一起学(十):线程模型
要想开发一个高性能的TCP服务器,熟悉所使用框架的线程模型非常重要.MINA.Netty.Twisted本身都是高性能的网络框架,如果再搭配上高效率的代码,才能实现一个高大上的服务器.但是如果不了解它 ...
- Mina、Netty、Twisted一起学(九):异步IO和回调函数
用过JavaScript或者jQuery的同学都知道,JavaScript特别是jQuery中存在大量的回调函数,例如Ajax.jQuery的动画等. $.get(url, function() { ...
- Mina、Netty、Twisted一起学(七):发布/订阅(Publish/Subscribe)
消息传递有很多种方式,请求/响应(Request/Reply)是最常用的.在前面的博文的例子中,很多都是采用请求/响应的方式,当服务器接收到消息后,会立即write回写一条消息到客户端.HTTP协议也 ...
- Mina、Netty、Twisted一起学(六):session
开发过Web应用的同学应该都会使用session.由于HTTP协议本身是无状态的,所以一个客户端多次访问这个web应用的多个页面,服务器无法判断多次访问的客户端是否是同一个客户端.有了session就 ...
- Mina、Netty、Twisted一起学(五):整合protobuf
protobuf是谷歌的Protocol Buffers的简称,用于结构化数据和字节码之间互相转换(序列化.反序列化),一般应用于网络传输,可支持多种编程语言. protobuf如何使用这里不再介绍, ...
随机推荐
- Tomcat学习笔记 - 错误日志 - NetBeans配置tomcat出错情况总结 -- 部署错误: 启动 Tomcat 失败。-- '127.0.0.1' 不是内部或外部命令,也不是可运行的程序
真的管用,不知道为啥管用.转载自:http://blog.sina.com.cn/s/blog_709548200102vgy4.html 问题描述: 新安装的NetBeans8.0.2,安装过程中还 ...
- 用php逐行读取文件
做个备份年纪大了,都不愿意自己思考了 $str = file_get_contents($tmpfilename);//获得内容 $arr = explode("\n",$str) ...
- 使用jekyll主题
github上面有很多基于jekyll的主题 https://github.com/theme4jekyll 使用起来也非常方便.直接clone到本地 这些主题,包括了很多模板,在新建博客的时候可以在 ...
- PAT 1059. Prime Factors (25) 质因子分解
题目链接 http://www.patest.cn/contests/pat-a-practise/1059 Given any positive integer N, you are suppose ...
- Loadrunner11 录制手机App脚本多种方法介绍
总体来说,通过LR录制手机脚本的方式有三种:1)通过代理方式录制,保证手机电脑在同一个网段:2)通过抓包录制,在手机上安装Mobile Recorder:3)通过安卓模拟器录制,本地安装Android ...
- Hibernate中3种结果转换的详细说明(转)
Hibernate中3种结果转换的详细说明 在hibernate使用的过程中.我们通常需要对结果进行解释. Hibernate为我们提供了以下3种解释方法: Transformers.ALIAS_TO ...
- leiningen安装记录
Leiningen是Clojure项目管理工具Leiningen is the easiest way to use Clojure,官网:http://leiningen.org/ 1:首先下载Le ...
- Randomized QuickSelect
In this blog, we give a solution for Quick Select. Here, we have an improvement. The idea is to rand ...
- Types of Binary Tree
Complete Binary Tree According to wiki, A complete binary tree is a binary tree in which every level ...
- cc150 Chapter 2 | Linked Lists 2.6 Given a circular linked list, implement an algorithm which returns node at the beginning of the loop.
2.6Given a circular linked list, implement an algorithm which returns the node at the beginning of ...