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
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
|
#!/usr/bin/env python3
import os
import hashlib
import re
pip_index = open("index.html", "w")
pip_index.write("""<!DOCTYPE HTML>
<html lang="en-GB">
<head>
<title>yt-dlp-rajiko pip index</title>
<link rel="canonical" href="https://427738.xyz/yt-dlp-rajiko/pip/yt-dlp-rajiko/">
</head>
<body>
<ul>
""")
site_sha256 = []
tarballs = []
wheels = []
for item in sorted(os.listdir()):#, key=lambda x: x.name):
if os.path.islink(item):
continue
if item.endswith(".tar.gz"):
tarballs.append(item)
elif item.endswith(".whl"):
wheels.append(item)
else:
continue
pip_index.write("\t<li>")
pip_index.write('<a href="')
pip_index.write(item)
with open(item, "rb") as f:
checksum = hashlib.sha256(f.read()).hexdigest()
pip_index.write("#sha256=")
pip_index.write(checksum)
pip_index.write('">')
pip_index.write(item)
pip_index.write("</a>\n")
site_string = checksum + " " + '<a href="dl/' + item + '">' + item + "</a><br>"
site_sha256.append(site_string)
pip_index.write("""</ul>
</body>
</html>""")
latest_tarball = tarballs[-1]
latest_wheel = wheels[-1]
print(latest_tarball, latest_wheel)
os.remove("yt_dlp_rajiko-latest.tar.gz")
os.symlink(latest_tarball, "yt_dlp_rajiko-latest.tar.gz")
os.remove("yt_dlp_rajiko-latest.whl")
os.symlink(latest_wheel, "yt_dlp_rajiko-latest.whl")
site_sha256.reverse()
latest_list = site_sha256[:2]
previous_list = site_sha256[2:]
latest = "\n".join(["<!-- LATEST SHA256 START -->", "<code>", "\n".join(latest_list), "</code>", "<!-- LATEST SHA256 END -->"])
previous = "\n".join(["<!-- PREVIOUS SHA256 START -->", "<code>", "\n".join(previous_list), "</code>", "<!-- PREVIOUS SHA256 END -->"])
for i in ["../../index.html", "../../index.ja.html"]:
with open(i, "r+") as f:
page = f.read()
page = re.sub(r"<!-- LATEST SHA256 START -->.+<!-- LATEST SHA256 END -->", latest, page, flags=re.DOTALL)
page = re.sub(r"<!-- PREVIOUS SHA256 START -->.+<!-- PREVIOUS SHA256 END -->", previous, page, flags=re.DOTALL)
f.seek(0)
f.truncate(0)
f.write(page)
|