删除文件 synchronize/synchronize.py

This commit is contained in:
Bigsk 2020-07-20 09:54:06 +08:00 committed by Gitee
parent 0dceea822a
commit 5d32767ef5

View File

@ -1,150 +0,0 @@
import requests
import os
import time
import json
print('[' + time.strftime("%Y-%m-%d %H:%M:%S", time.localtime()) + ']' + '[INFO]:Starting the synchronizing system.')
#------------------------------------------------------------------------#
print('------------------------------------------------------------------------')
#Part Of Load All Kinds Of Global Variables From Json File.
print('[' + time.strftime("%Y-%m-%d %H:%M:%S", time.localtime()) + ']' + '[INFO]:Starting to specify global variables from json file.')
configopen=open("synchronize/config.json", mode='r')
configjson = configopen.read()
configopen.close()
config = json.loads(configjson)
SystemName=config['systemname']
SavePath='synchronize/' + config['savepath']
Version=config['version']
UserAgent={'User-Agent':config['useragent']}
Log='[' + time.strftime("%Y-%m-%d %H:%M:%S", time.localtime()) + ']' + '[INFO]:Starting the synchronizing system.\n' + '------------------------------------------------------------------------\n' + '[' + time.strftime("%Y-%m-%d %H:%M:%S", time.localtime()) + ']' + '[INFO]:Starting to specify global variables.\n' + '[' + time.strftime("%Y-%m-%d %H:%M:%S", time.localtime()) + ']' + '[INFO]:Specifying global variables successful.\n'
print('[' + time.strftime("%Y-%m-%d %H:%M:%S", time.localtime()) + ']' + '[INFO]:Specifying global variables successful.')
#------------------------------------------------------------------------#
print('------------------------------------------------------------------------')
Log=Log + '------------------------------------------------------------------------' + '\n'
#The Part Of All Kinds Of Functions.
print('[' + time.strftime("%Y-%m-%d %H:%M:%S", time.localtime()) + ']' + '[INFO]:Starting to load all kinds of modules.')
Log=Log + '[' + time.strftime("%Y-%m-%d %H:%M:%S", time.localtime()) + ']' + '[INFO]:Starting to load all kinds of modules.' + '\n'
#Module Which Be Used To Print And Save Logs.
def log(logvar):
global Log
print('[' + time.strftime("%Y-%m-%d %H:%M:%S", time.localtime()) + ']' + logvar)
Log=Log + '[' + time.strftime("%Y-%m-%d %H:%M:%S", time.localtime()) + ']' + logvar + '\n'
#Module Which Be Used To Synchronize Single File.
def synchronize(url, filepath):
global Log
global UserAgent
log('[INFO]:The ' + SystemName + ' is synchronizing the file ' + SavePath + filepath + '.')
try:
synchronize=requests.get(url, headers=UserAgent)#Without Proxies
with open(SavePath + filepath,"wb") as code:
code.write(synchronize.content)
except:
log('[ERROR]:There has a error in task of synchronizing the file ' + SavePath + filepath + '.')
else:
log('[INFO]:The file ' + SavePath + filepath + ' has been synchronized successfully.')
#Module Which Be Used To Determine Whether The Dir Exists.
def make_sure_dir_exists(dirpath):
global Log
if os.path.exists(SavePath + dirpath):
log('[INFO]:The dir ' + SavePath + dirpath + ' has already existed.Nothing to do.')
else:
log('[INFO]:The dir ' + SavePath + dirpath + ' does not exist.The ' + SystemName + ' will create one.')
os.makedirs(SavePath + dirpath)
log('[INFO]:Loading all kinds of modules successfully.')
#------------------------------------------------------------------------#
print('------------------------------------------------------------------------')
Log=Log + '------------------------------------------------------------------------' + '\n'
#Save JSON In Global Variables
log('[INFO]:Starting to get the json of MC versions list.')
Log=Log + '[' + time.strftime("%Y-%m-%d %H:%M:%S", time.localtime()) + ']' + '[INFO]:Starting to get the json of MC versions list.' + '\n'
#Save MC Versions List Json In Global Variables
mcversionsjson=requests.get(url='http://launchermeta.mojang.com/mc/game/version_manifest.json')
log('[INFO]:Get json of MC versions successfully.')
Log=Log + '[' + time.strftime("%Y-%m-%d %H:%M:%S", time.localtime()) + ']' + '[INFO]:Get json of MC versions successfully.' + '\n'
#------------------------------------------------------------------------#
print('------------------------------------------------------------------------')
Log=Log + '------------------------------------------------------------------------' + '\n'
#The Part of Determining Whether The Dir Exists.
#Determining Whether The Log Dir Exists.
log('[INFO]:Starting to determine whether the log dir exists.')
dirpath='synchronize/' + config['logspath']
if os.path.exists(dirpath):
log('[INFO]:The dir ' + dirpath + ' has already existed.Nothing to do.')
else:
log('[INFO]:The dir ' + dirpath + ' does not exist.The ' + SystemName + ' will create one.')
os.makedirs(dirpath)
log('[INFO]:Determining whether the log dir exists successfully.')
log('[INFO]:Starting to determine whether all of dirs exists.')
#Determining Whether The MC Versions Dir Exists.
log('[INFO]:Starting to determine whether the MC versions dir exists.')
make_sure_dir_exists('mojang/launchermeta/mc/game')
log('[INFO]:Determining whether the MC versions dir exists successfully.')
#Determining Whether The Liteloader Versions Dir Exists.
log('[INFO]:Starting to determine whether the Liteloader versions dir exists.')
make_sure_dir_exists('liteloader/dl/versions')
log('[INFO]:Determining whether the Liteloader versions dir exists successfully.')
log('[INFO]:Determining whether all of dirs exists successfully.')
#------------------------------------------------------------------------#
print('------------------------------------------------------------------------')
Log=Log + '------------------------------------------------------------------------' + '\n'
#The Part of Synchronizing Single Important Files.
log('[INFO]:Starting to synchronize single files.')
#Synchronizing The Minecraft Versions List File.
log('[INFO]:Starting to synchronize MC versions files.')
synchronize('http://launchermeta.mojang.com/mc/game/version_manifest.json', 'mojang/launchermeta/mc/game/version_manifest.json')
log('[INFO]:Synchronizing MC versions files successfully.')
#Synchronizing The Liteloader Versions List File.
log('[INFO]:Starting to synchronize Liteloader versions files.')
synchronize('http://dl.liteloader.com/versions/versions.json', 'liteloader/dl/versions/versions.json')
log('[INFO]:Synchronizing Liteloader versions files successfully.')
#------------------------------------------------------------------------#
print('------------------------------------------------------------------------')
Log=Log + '------------------------------------------------------------------------' + '\n'
log('[INFO]:Starting to synchronize more files.')
log('[WARN]:Attention!In the version new than 2.3.0,the synchronize tools will synchronize files in the background to improve the speed of synchronize,that means you will not see the log output in the shell/cmd/powershell.If you want to see all logs and not care about the speed,you can download the old version on gitee,but we will not provide update for it.')
#------------------------------------------------------------------------#
print('------------------------------------------------------------------------')
Log=Log + '------------------------------------------------------------------------' + '\n'
#MC Versions Synchronizing Part.
log('[INFO]:Starting synchronize all of MC versions.')
#Part 1.
log('[INFO]:Starting synchronize part 1.')
log('[INFO]:Starting to synchronize files and dirs on https://launchermeta.mojang.com/.')
os.popen('python synchronize/part1.py','r')
time.sleep(5)
#Part 2.
log('[INFO]:Starting synchronize part 2.')
log('[INFO]:Starting to synchronize files and dirs on https://libraries.minecraft.net/.')
os.popen('python synchronize/part2.py','r')
#------------------------------------------------------------------------#
print('------------------------------------------------------------------------')
Log=Log + '------------------------------------------------------------------------' + '\n'
#Starting To Save Logs.
log('[INFO]:Starting to save logs.')
logwrite=open('synchronize/' + config['logspath'] + "main-" + str(time.strftime("%Y-%m-%d-%H-%M-%S", time.localtime()) + '.txt'),mode='w')
logwrite.write(Log + '[' + time.strftime("%Y-%m-%d %H:%M:%S", time.localtime()) + ']' + '[INFO]:Save logs successfully.' + '\n' + '[' + time.strftime("%Y-%m-%d %H:%M:%S", time.localtime()) + ']' + '[INFO]:All tasks of synchronizing have done successfully.')
print('[' + time.strftime("%Y-%m-%d %H:%M:%S", time.localtime()) + ']' + '[INFO]:Save logs successfully.' + '\n' + '[' + time.strftime("%Y-%m-%d %H:%M:%S", time.localtime()) + ']' + '[INFO]:All tasks of synchronizing have done successfully.')
logwrite.close()