mirror of
https://github.com/Faraphel/Atlas-Install.git
synced 2025-07-02 02:38:30 +02:00
78 lines
2 KiB
Python
78 lines
2 KiB
Python
"""
|
|
this script allow you to more easily select map preview for each track.
|
|
"""
|
|
import shutil
|
|
|
|
import requests
|
|
from selenium import webdriver
|
|
import keyboard
|
|
import ctypes
|
|
import time
|
|
import glob
|
|
import os
|
|
|
|
get_filename = lambda file: ".".join(file.split(".")[:-1])
|
|
get_nodir = lambda file: file.replace("\\", "/").split("/")[-1]
|
|
move_cursor_to = ctypes.windll.user32.SetCursorPos
|
|
os.makedirs("./map preview/tmp/", exist_ok=True)
|
|
|
|
chrome_option = webdriver.ChromeOptions()
|
|
driver = webdriver.Chrome("./map preview/chromedriver.exe", options=chrome_option)
|
|
driver.get("https://noclip.website/")
|
|
|
|
|
|
LAST_TRACK_PLAYED = "d97a4b29d422e830e07e98196e4f2e3f41a90086"
|
|
latest_track_passed = LAST_TRACK_PLAYED is None
|
|
tracks = glob.iglob("../file/Track/*.szs")
|
|
track = "none.png"
|
|
|
|
|
|
def ignore_track():
|
|
global track, driver
|
|
print("skipping to next track")
|
|
|
|
driver.close()
|
|
driver = webdriver.Chrome("./map preview/chromedriver.exe", options=chrome_option)
|
|
driver.get("https://noclip.website/")
|
|
|
|
skip_to_next()
|
|
|
|
|
|
def save_screenshot():
|
|
global track
|
|
print("saving screenshot")
|
|
driver.save_screenshot(filename=f"./map preview/image/{get_filename(get_nodir(track))}.png")
|
|
skip_to_next()
|
|
|
|
|
|
def skip_to_next():
|
|
global track, latest_track_passed
|
|
|
|
if os.path.exists("./map preview/tmp/" + get_nodir(track)):
|
|
os.remove("./map preview/tmp/" + get_nodir(track))
|
|
|
|
track = next(tracks)
|
|
|
|
while True:
|
|
sha1 = get_nodir(track).replace(".szs", "")
|
|
if not latest_track_passed and sha1 != LAST_TRACK_PLAYED:
|
|
track = next(tracks)
|
|
continue
|
|
|
|
else: latest_track_passed = True
|
|
|
|
if requests.get(f"https://github.com/Faraphel/MKWF-Install/raw/track-preview/map/{sha1}.png").status_code != 200: break
|
|
print(f"track {sha1} already exist !")
|
|
track = next(tracks)
|
|
|
|
print(track)
|
|
|
|
shutil.copy(track, f"./map preview/tmp/{get_nodir(track)}")
|
|
|
|
|
|
skip_to_next()
|
|
keyboard.add_hotkey('h', save_screenshot)
|
|
keyboard.add_hotkey('j', ignore_track)
|
|
|
|
while True:
|
|
time.sleep(1)
|