-
Notifications
You must be signed in to change notification settings - Fork 0
/
updater.py
66 lines (50 loc) · 1.5 KB
/
updater.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
import requests
import wget
from zipfile import ZipFile as zp
import subprocess
import os
import shutil
def download():
url = 'https://github.com/Genymobile/scrcpy/releases/latest'
r = requests.get(url)
version = r.url.split('/')[-1]
link_0 = "https://github.com/Genymobile/scrcpy/releases/latest/download/scrcpy-win64-"
link_1 = ".zip"
end_link = link_0+version+link_1
final = 'C:\\Tools\\Scrcpy\\scrcpy.zip'
wget.download(end_link, final)
return final
def extract():
with zp('C:\\Tools\\Scrcpy\\scrcpy.zip', 'r') as zipObj:
zipObj.extractall('C:\\Tools\\Scrcpy')
def folder_loc():
process = subprocess.Popen(
["powershell", "cd C:\\Tools\\Scrcpy\\ ; ls"], stdout=subprocess.PIPE)
result = process.communicate()[0]
loc = result.decode('utf-8').split()
folder_name = loc[14]
return folder_name
def move(folder_name):
des = 'C:\\Tools\\Scrcpy\\'
fol_loc = 'C:\\Tools\\Scrcpy\\'+folder_name
file = os.listdir(fol_loc)
for f in file:
src = os.path.join(fol_loc, f)
dst = os.path.join(des, f)
shutil.move(src, dst)
return fol_loc
def remove(fol_loc, final):
shutil.rmtree(fol_loc)
os.remove(final)
def folder_check():
folder_path = "C:\\Tools\\Scrcpy"
if not os.path.exists(folder_path):
os.makedirs(folder_path)
def main():
folder_check()
final = download()
extract()
folder_name = folder_loc()
fol_loc = move(folder_name)
remove(fol_loc, final)
main()