python minecraft_使用Python获取Minecraft的最新资讯

widget_5.svg

如果想要了解Minecraft最新的版本信息,又不想到网页上翻找,怎么办呢?其实,我们可以使用Python来获取最新的版本信息和新闻。

先说版本信息,Java版的版本更新情况可以在官方提供的Json文件中看到,地址为http://launchermeta.mojang.com/mc/game/version_manifest.json。我们可以使用Python的Json解析库对其进行解析,然后打印在控制台上。代码如下:

from urllib.request import urlopen

import json,time,datetime

def getTime(timestr):

return time.strftime("%b/%d/%Y,%H:%M:%S(%a)", time.strptime(timestr[0:-7],'%Y-%m-%dT%H:%M:%S'))

json_url = 'http://launchermeta.mojang.com/mc/game/version_manifest.json'

response = urlopen(json_url)

#req is a string

req = response.read()

'''

with open('version_manifest.json','wb') as f:

f.write(req)

'''

versions = json.loads(req)

print('Welcome to the Minecraft Version Checker!\nThis week is %s%s%s\n' %(datetime.datetime.now().isocalendar()[0]-2000,'w',datetime.datetime.now().isocalendar()[1]))

print('Latest Release: ',versions['latest']['release'])

print('Latest Snapshot: ',versions['latest']['snapshot'],'\n\nRecent Versions:')

print('%-21s%-14s%-30s' %('Version Id:','Type:','Release Time(GMT):'))

i = 0

for ver in versions['versions']:

print('%-21s%-14s%-30s' %(ver['id'],ver['type'],getTime(ver['releaseTime'])))

i += 1

if i == 10:

break

print('\n')

如果我们还想要一些更详细的新闻,怎么办呢。一个解决方法是加载其他网站的CSS,比如:

import feedparser,time

src = ['https://www.minecraftglobal.com/feed/','http://www.9minecraft.net/feed/','https://wikiminecraft.com/feed/']

for url in src:

feed = feedparser.parse(url)

print("News Source:",feed.channel.title)

print("There are",len(feed.entries),"pieces of news from this source.\n")

for e in feed.entries:

print('%-70s%s By %s' %('[ '+e.title+' ]',time.strftime("%b/%d/%Y,%H:%M:%S(%a)", e.published_parsed),e.author))

print('>>',e.description[3:200],'...[',e.link[0:100],']')

print('\n\n')

其中的src就是加载源,可以按需修改。这样一来,就可以方便地获取Minecraft的最新资讯啦!

本文的代码均已上传至Gitee仓库,另附有便于Windows运行的批处理脚本,点击本文右上角的旗帜图案即可访问。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值