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)µÚ¶þ¸ö²ÎÊýΪ±»ºËÐĶªÆúµÄÊý¾Ý°ü¡£
Ïà¹ØÎĵµ£º
½ñÌìͻȻÓÐÒ»¸öÏë·¨£¬¾ÍÊÇÏë×Ô¼ºÐ´Ò»¸ö·Òë½Å±¾¡£¿ÉϧGoogleÌṩµÄAPIÊǹ©ÍøÂçÓ¦Óõġ£¸ÕºÃÔÚ¡¶dive into python¡·ÀïÃæÕâ±¾ÊéÀïÃæ¿´µ½ÈçºÎ´ÓHTMLÎĵµÖÐÌáÈ¡³öÀ´×Ô¼ºÏëÒªµÄÄÚÈÝ£¬ÄÇÕâÑùµÄ»°£¬¿É²»¿ÉÒÔÄ£Äâä¯ÀÀÆ÷À´·¢ËÍÏë·ÒëµÄ¾ä×Ó£¬È»ºóÔÙ½ÓÊÕ·µ»Ø½á¹ûºóµÄHTMLÔ´Â룬×îºó´ÓÖÐÌáÈ¡³ö·ÒëµÄ½á¹ûÄØ£¿¡¡¡¡ÆäʵÊÇÐеģ¬ÒòΪÀûÓ ......
Ò»¡¢¼ò½é
py2exeÊÇÒ»¸ö½«python½Å±¾×ª»»³ÉwindowsÉϵĿɶÀÁ¢Ö´ÐеĿÉÖ´ÐгÌÐò(*.exe)µÄ¹¤¾ß£¬ÕâÑù£¬Äã¾Í¿ÉÒÔ²»ÓÃ×°python¶øÔÚwindowsϵͳÉÏÔËÐÐÕâ¸ö¿ÉÖ´ÐгÌÐò¡£
py2exeÒѾ±»ÓÃÓÚ´´½¨wxPython,Tkinter,Pmw,PyGTK,pygame,win32com clientºÍserver,ºÍÆäËüµÄ¶ÀÁ¢³ÌÐò¡£py2exeÊÇ·¢²¼ÔÚ¿ªÔ´Ðí¿É֤ϵġ£
¶þ¡¢°²×°py2exe
......
* PYTHON Ç÷ÏòÓÚ½«¹¦ÄÜÏà½üµÄ¶ÔÏó·Å½øÒ»¸öMODULE£¨Îļþ£©À²»Óõ£ÐĶÔÏó»áÌ«´ó£¬ÒòΪÈç¹û¶ÔÏóÌ«´óÁË£¬ÄÇËü¿ÉÄÜÊÇ×öµÄÊÂÐÔÌ«¶àÁË
ÐèÒª±»Öع¹¡¢·Ö½â¡£
* ¿ª·¢¸¨Öú¹¤¾ßÊÇPYTHONµÄÒ»¸öÇ¿Ïî¡£Èç¹¹½¨¹¤¾ß¡¢Í³¼Æ¹¤¾ßµÈµÈ£¬Ö»ÒªÓÐÐèÇó£¬ËüÒ»¶¨°ìµÃµ½£¬ÒòΪÕâЩӦÓö԰²È«ºÍÐÔÄÜÒªÇ󲻸ߣ¬·´
¶ø¶Ô¿ª· ......
vimÖ§³Ö´ó²¿·ÖÎļþ¸ñʽµÄÓï·¨¸ßÁÁ£¬¶øÇÒ¿ÉÒÔ×Ô¶¨Òå¡£²»¹ýȱʡµÄpythonÓï·¨¸ßÁÁ¸Ð¾õÌ«ÉÙ£¬ÐÞ¸Äһϡ£
1.ÐÞ¸ÄÓï·¨¸ßÁÁÎļþ
vim/vim72/syntax/python.vim
½«" let python_highlight_all = 1
Ç°ÃæµÄÒýºÅÈ¥µô£¬¿ÉÖ§³ÖÄÚÖú¯Êý£¬Êý×Ö£¬¿Õ¸ñ£¬Òì³£µÄÓï·¨¸ßÁÁ¡£
2. ½«self¼Ó½ø
syn keyword pythonBuiltin&n ......
pySerial
Overview
This module encapsulates the access for the serial port. It provides backends for Python running on Windows, Linux, BSD (possibly any POSIX compliant system), Jython and IronPython (.NET and Mono). The module named "serial" automatically selects the appropriate backend.
It is re ......