WEB开发网
开发学院软件开发Python 使用 Twisted 框架进行网络编程,第 2 部分 阅读

使用 Twisted 框架进行网络编程,第 2 部分

 2008-11-13 13:14:25 来源:WEB开发网   
核心提示: 清单 1. logmaker.py Weblog 刷新器脚本from webloglib import log_fields, TOP, ROW, END, COLORimport webloglib as wllfrom urllib import unquote_plus as uqp

清单 1. logmaker.py Weblog 刷新器脚本

  from webloglib import log_fields, TOP, ROW, END, COLOR
import webloglib as wll
from urllib import unquote_plus as uqp
import os, time
LOG = open('../access-log')
RECS = []
PAGE = 'www/weblog.html'
while 1:
  page = open(PAGE+'.tmp','w')
  RECS.extend(LOG.readlines())
  RECS = RECS[-35:]
  print >> page, TOP
  odd = 0
  for rec in RECS:
    hit = [field.strip('"') for field in log_fields(rec)]
    if hit[wll.status]=='200' and hit[wll.referrer]!='-':
      resource = hit[wll.request].split()[1]
      referrer = uqp(hit[wll.referrer]).replace('&',' &')
      print >> page, ROW % (COLOR[odd], referrer, resource)
      odd = not odd
  print >> page, END
  page.close()
  os.rename(PAGE+'.tmp',PAGE)
  time.sleep(5)

模块 Webloglib 中包含了所使用的精确 HTML,以及用于日志字段位置的一些常量。您可以从 参考资料所列出的 URL 中下载该模块。

这里要注意的是:不必将 Twisted 用作服务器 - Apache 或任何其他 Web 服务器都可以很好地担当此任。

创建 Twisted Web 服务器

运行 Twisted Web 服务器非常简单 - 或许比启动其他服务器还要简单。运行 Twisted Web 服务器的第一步是创建一个 .tap 文件,就像我们在第一篇文章中所看到的那样。您 可以通过在脚本中定义应用程序、包括对 application.save() 的调用然后运行该脚本来创建 .tap 文件。但是您也可以使用工具 mktap 来创建 .tap 文件。事实上,对于许多公共协议,您可以创建服务器 .tap 文件,而完全不需要任何特殊的脚本。例如:

上一页  1 2 3 4 5 6 7  下一页

Tags:使用 Twisted 框架

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接