python下如何查询CS反恐精英的服务器信息
前言
服务器的相关知识曾经让我非常困惑。我相信还有很多的Python开发者和我有着类似的遭遇。本文主要介绍了python下如何查询CS反恐精英的服务器信息,有需要的可以参考学习。
CS反恐精英1.5版本示例代码
#!/bin/envpython
importurllib2,base64,sys,getopt
importre
importsocket
defUsage():
print"Usage:hlds.py-h127.0.0.1-p27015"
sys.exit(2)
defmain():
#Defaultvalues
host="localhost"
port=""
iflen(sys.argv)<1:
Usage()
try:
opts,args=getopt.getopt(sys.argv[1:],"h:p:a:")
exceptgetopt.GetoptError:
Usage()
#Assignparametersasvariables
foropt,arginopts:
ifopt=="-h":
host=arg
ifopt=="-p":
port=arg
sock=socket.socket(socket.AF_INET,socket.SOCK_DGRAM)
port=int(port)
sock.settimeout(10)
sock.connect((host,port))
sock.send('\xFF\xFF\xFF\xFF\x69\x6E\x66\x6F\x73\x74\x72\x69\x6E\x67\x0A\00')
request=sock.recv(1400)
sock.close()
server_info=request.replace('\xFF','')
buffer=re.findall(r'\d+',server_info)
printbuffer[6]
if__name__=="__main__":
main()
CS反恐精英1.6版本示例代码
#!/bin/envpython
importurllib2,base64,sys,getopt
importre
importsocket
defUsage():
print"Usage:hlds.py-h127.0.0.1-p27015"
sys.exit(2)
defmain():
#Defaultvalues
host="localhost"
port=""
iflen(sys.argv)<1:
Usage()
try:
opts,args=getopt.getopt(sys.argv[1:],"h:p:a:")
exceptgetopt.GetoptError:
Usage()
#Assignparametersasvariables
foropt,arginopts:
ifopt=="-h":
host=arg
ifopt=="-p":
port=arg
sock=socket.socket(socket.AF_INET,socket.SOCK_DGRAM)
port=int(port)
sock.settimeout(10)
sock.connect((host,port))
sock.send('\xFF\xFF\xFF\xFF\x54\x53\x6F\x75\x72\x63\x65\x20\x45\x6E\x67\x69\x6E\x65\x20\x51\x75\x65\x72\x79\x00')
request=sock.recv(1400)
sock.close()
#server_info=request.replace('\xFF','')
printrequest
#buffer=re.findall(r'\d+',server_info)
#printbuffer[6]
#printbuffer
if__name__=="__main__":
main()
总结
以上就是关于python下查询CS反恐精英服务器信息的全部内容了,希望本文的内容对大家的学习或者工作能带来一定的帮助,如果有疑问大家可以留言交流。