本文目录一览:
- 1、如何在python中添加自定义模块
- 2、用python篡改icmp报文再发送给接收方
- 3、python中怎么调用自定义函数?
- 4、python 怎样去编写一个ping wwww.baidu.com -n 8就是ping之后能带参数的
如何在python中添加自定义模块
通过文件进行设置
在Python的安装目录下,找到 \Lib\site-packages 文件夹,在该文件夹下新建一个以.pth为后缀名的文件,编辑文件,内容为要添加的库路径。(我的文件名命名为..pth)。添加路径示例:文件内容写入要引用的库路径
步骤1:建立文件,可以首先建立一个文本文档,写下路径如D:\\Python\\mulib
步骤2:保存文档时,将文件类型选为所有,文件名为 setpath.pth。文件名为什么无所谓,主要是只有当文档类型选为所有,才可以定义文件类型为.pth
步骤3:将保存好的文件放在Python的site-packages文件夹中就完成了。
用python篡改icmp报文再发送给接收方
程序处理上有些问题,建议深入研究一下ICMP协议。下面是Python 3的一个ICMP的简单实现,可以参考一下。
import socket
import struct
def checksum(source_string):
sum = 0
countTo = (len(source_string)/2)*2
count = 0
while countcountTo:
thisVal = ord(source_string[count + 1:count + 2])*256 + ord(source_string[count:count + 1])
sum = sum + thisVal
sum = sum 0xffffffff
count = count + 2
if countTolen(source_string):
sum = sum + ord(source_string[len(source_string) - 1])
sum = sum 0xffffffff
sum = (sum 16) + (sum 0xffff)
sum = sum + (sum 16)
answer = ~sum
answer = answer 0xffff
answer = answer 8 | (answer 8 0xff00)
return answer
def ping(ip):
rawsocket1=socket.socket(socket.AF_INET,socket.SOCK_RAW, socket.getprotobyname('icmp'))
packet = struct.pack('!BBHHH8s', 8, 0, 0, 0, 0, b'abcdefgh')
chksum=checksum(packet)
packet = struct.pack('!BBHHH8s', 8, 0, chksum, 0, 0, b'abcdefgh')
rawsocket1.sendto(packet, (ip, 1))
ping('10.172.23.254')
python中怎么调用自定义函数?
1、首先在当前目录下找有没有abc、abc.py
2、找python的安装目录:F:\Python2.7Exe\Lib\site-packages;F:\Python2.7Exe\Lib;
3、找电脑中path下面的目录
于是我改变路径,将保存的abc.py文件直接放在python的安装目录下,使用import abc命令,然后在Python交互界面用 abc.XXX(XXX是abc.py文件中的定义函数的函数名),解决了调用自定义函数问题。
python 怎样去编写一个ping wwww.baidu.com -n 8就是ping之后能带参数的
其实在pip是有一个叫做的ping的项目的,何必折腾自己呢?安装好了后,可以这样简单使用即可,
import ping
ping.verbose_ping(dest_addr, timeout = 2, count = 4, psize = 64)
另外如果要实现更复杂的东西,还有很多更底层的函数方便你使用。