最近猛玩Minecraft,无聊之下写了这个东西,可以取到版本,在线人数,最大人数。import socket

import codecs

class mcstatus:

def __init__(self,hostname,port,timeout = 0.6):

self.hostname = hostname

self.timeout = timeout

self.port = port

def getserverinfo(self):

s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)

ip = socket.gethostbyname(self.hostname)

try:

s.settimeout(self.timeout)

s.connect((ip,self.port))

s.send(bytearray([0xFE, 0x01]))

data_raw = s.recv(1024)

s.close()

#这个编码太神秘了

data = data_raw.decode('cp437').split('\x00\x00\x00')

#print codecs.utf_16_be_decode(data_raw[1:])[0] #(utf-16)这个可以看到MOTD和其他信息

info = {}

info['version'] = data[2].replace("\x00","")

info['online_players'] = data[4].replace("\x00","")

info['max_players'] = data[5].replace("\x00","")

return (True,info)

except socket.error:

return (False)

if __name__ == '__main__':

app = mcstatus('mc1.chutian.bid',25565)

print app.getserverinfo()

欢迎来我的小服务器玩耍(已开启正版验证):

mc.chutian.bid

python我的世界服务器_Python取Minecraft服务器信息相关推荐

  1. 教你用python实现34行代码爬取东方财富网信息,爬虫之路,永无止境!!

    教你用python实现34行代码爬取东方财富网信息,爬虫之路,永无止境!! 代码展示: 开发环境: windows10 python3.6 开发工具: pycharm weddriver 库: sel ...

  2. python数据包的作用_使用Python将登录数据包发送到Minecraft服务器不起作用

    我在Python中有以下脚本 . 它的作用是尝试连接到MineCraft服务器,首先发送'handshake',然后发送登录请求 . 协议规格可以在这里找到:http://wiki.vg/Protoc ...

  3. python实现web服务器_python实现web服务器

    本想写一篇关于http->nginx->php这个过程中数据是怎么传输的文章,想了半天,实在没有心情去写.刚好看了一下python,就想着用python实现一下web服务器的过程.这个很简 ...

  4. python写一个爬虫、爬取网站漫画信息_python爬取漫画

    原博文 2017-05-31 00:56 − 抓取漫画的网址是:sf互动传媒 抓取漫画的由来也是看了知乎上有人说用爬取漫画,然后自己也玩玩 首页中每个漫画的url是类似这样存储的: 相关推荐 2019 ...

  5. 我的世界服务器登陆用的邮箱,我的世界服务器登录教程 Minecraft服务器教程

    minecraft(我的世界或MC)是一款建筑类休闲游戏,主要以搭建建筑物和改造世界为乐趣,透过不同方块的组合与拼凑,轻而易举的就能制作出小木屋.城堡.城市甚至一个世界.那么问题来了:我的世界服务器应 ...

  6. python 搭建的http 动态服务器_Python 创建HTTP服务器的简单示例

    这篇文章主要为大家详细介绍了Python 创建HTTP服务器的简单示例,具有一定的参考价值,可以用来参考一下. 对python这个高级语言感兴趣的小伙伴,下面一起跟随512笔记的小编两巴掌来看看吧! ...

  7. python获取系统时间月份_python 取数组绝对值python获取当前日期

    今天群里一个人问了怎么获取当前时间的问题,以前接触过计算日期之差的,具体代码如下: import datetime d1=datetime.datetime(2014,3,14) d2=datetim ...

  8. python tcp服务器_Python 创建TCP服务器的方法

    问题 你想实现一个服务器,通过TCP协议和客户端通信. 解决方案 创建一个TCP服务器的一个简单方法是使用 socketserver 库.例如,下面是一个简单的应答服务器: from socketse ...

  9. python是轻量级语言吗_python socket 轻量级服务器详解

    使用非阻塞加多线程的方式,轻松实现python网络服务器框架. 工作总结 由于Python天生的优点,特别适用于快速实现功能. #!/usr/bin/python2.7 import sys impo ...

最新文章

  1. 相机自动对焦AF原理
  2. android 绑定端口号,android 获取IP端口号等地址
  3. Oracle优化07-分析及动态采样-动态采样
  4. 小学计算机试教教案,小学信息技术人教版三年级下册第7课《轻轻松松来上网》优质课公开课教案教师资格证面试试讲教案...
  5. HDU1010 Tempter of the Bone dfs(奇偶减枝)
  6. 细嚼慢咽C++primer(4)——类(1):构造函数,类型别名
  7. php连接excel表格数据类型,TP5 中使用PHPExcel 导出导入数据到excel表格
  8. Python机器学习:评价分类结果004F1score
  9. **python基础类和对象(十二)
  10. “21天好习惯”第一期-19
  11. Vue格式化CSS样式
  12. 第三届阿里云磐久智维算法大赛——GRU BaseLine
  13. 走进晶圆厂,深入了解芯片制造流程
  14. 独立思考者的思考模型
  15. LiveMe x TiDB丨单表数据量 39 亿条,简化架构新体验
  16. react 返回上一页
  17. SSM项目秒杀系统---(一)业务分析与Dao层
  18. C语言 运算符的优先级与结合性
  19. CES 2019 前夕 | 万字长文回顾智能驾驶进化史
  20. linux版本市场占有率,2020年5月OS市场占有率报告:Ubuntu和Linux分别占有1.89%和0.97%...

热门文章

  1. MaxCompute使用常见问题总结
  2. Ampere Altra Max 对比测试数据公布,性能能效双领先
  3. 对象的基础用法和解构赋值
  4. 引入的html设置utf-8,如何为default.html将字符编码设置为UTF-8?
  5. python半圆_如何使用Python中的Zelle图形生成一个半圆?
  6. spring 使用其他类protected方法_Java操作bean、属性、方法的使用工具类
  7. Git 克隆远程项目到本地_01
  8. Mysql代码生成器转Oracle代码生成
  9. Linux 启动mysql提示表不存在
  10. Centos7 Docker 目录挂载_入门试炼06