易截截图软件、单文件、免安装、纯绿色、仅160KB

Python网络抓包库 pypcap

Ethereal 自带许多协议的 decoder,简单,易用,基于winpcap的一个开源的软件.但是它的架构并不灵活,如何你要加入一个自己定义的的解码器,得去修改 Ethereal的代码,再重新编译,很烦琐.对于一般的明文 协议,没有什么问题,但是对于加密协议,比如网络游戏,客户端程序一般会在刚连接上的时候,发送一个随机密钥,而后的报文都会用这个密钥进行加密,如此. 要想破解,得要有一个可编程的抓包器.
libpcap是一个不错的选择,但是对于抓包这样需要反复进行”试 验->修改”这个过程的操作,c 语言显然不是明智的选择.
Python提供了几个libpcapbind,http://monkey.org/~dugsong/pypcap/这里有 一个最简单的。在windows平台上,你需要先安装winpcap,如果你已经安装了Ethereal非常好用
一个规范的抓包过程
import pcap
import dpkt
pc=pcap.pcap()    #注,参数可为网卡名,如eth0
pc.setfilter('tcp port 80')    #设置监听过滤器
for ptime,pdata in pc:    #ptime为收到时间,pdata为收到数据
    print ptime,pdata    #...
对抓到的以太网V2数据包(raw packet)进行解包
p=dpkt.ethernet.Ethernet(pdata)
if p.data.__class__.__name__=='IP':
    ip='%d.%d.%d.%d'%tuple(map(ord,list(p.data.dst)))
    if p.data.data.__class__.__name__=='TCP':
        if data.dport==80:
            print p.data.data.data # by gashero
一些显示参数
nrecv,ndrop,nifdrop=pc.stats()
返回的元组中,第一个参数为接收到的数据包,(by gashero)第二个参数为被核心丢弃的数据包。


相关文档:

用 python 快速搭建网游服务器

赖勇浩(http://laiyonghao.com)
今天(2009年5月31日) OurPNP.org 搞了个聚会活动,弄了十几二十个人在广州海珠广场的堂会呆了五个小时,创下了我在 K 房呆的最长时间纪录。应他们的邀请,我做了个题为《用 python 快速搭建网游服务器》的小演讲,因为那边的电视竟然不能接电脑,所以讲的时候没有能够参照 PPT 来讲,观 ......

python minidom 写xml示例

以下是一个通过minidom模块写文件的完整示例,是在最近做的项目Walle上面用到的,这个示例的目的是生成一个如下的格式的xml,文件格式为无BOM utf-8。
生成xml文件格式:
<?xml version="1.0" encoding="utf-8"?> 
<coverages> 
    <coverage> 
    ......

Python装饰器

一颗语法糖——装饰器
理论不去管,只管能办事:
1.  我要让一个函数在执行的时候,去做一些事情,比如,我要看看这些函数是不是有docstring,将这个功能拿出来,定义一个装饰器:
def showmedoc(func):
     if func.__doc__:
        & ......

解压文件夹中的压缩文件 Python脚本

下载了很多压缩文件,就写了一个脚本
在Python中使用winrar命令,所以一般压缩文件都支持
有些压缩文件Python中还没有相应的库
你得先把winrar添加到path环境变量中
把代码保存为rar.py
在dos下使用,如:rar.py "D:\A B\C" mkdir
#rar.py
#decompress with winrar
#arguments :filename directory opt
# op ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号