/www/server/panel/btpyvm.py
顶部导入bs4
from bs4 import BeautifulSoup
修改解析代码替换下面的
def __parser_xml(self, data_txt: str) -> List:
res_list = []
# data_txt = data_txt.replace("<hr>", "")
last_2 = {
"data": (2, 0, 0),
"version": None,
}
# root = cElementTree.fromstring(data_txt)
# for data in root.findall("./body/pre/a"):
# v_str = data.text
# if v_str.startswith("2."):
# ver = v_str.strip("/")
# t_version = parse_version_to_list(ver)
# if t_version > last_2["data"]:
# last_2["data"] = t_version
# last_2["version"] = ver
# continue
# if v_str.startswith("3."):
# p_v = PythonVersion(v_str.strip("/"))
# res_list.append(p_v)
# continue
soup = BeautifulSoup(data_txt, 'html.parser')
links = soup.find_all('a')
for link in links:
v_str = link.text
ifv_str.startswith("2."):
ver = v_str.strip("/")
t_version = parse_version_to_list(ver)
if t_version > last_2["data"]:
last_2["data"] = t_version
last_2["version"] = ver
continue
elif v_str.startswith("3."):
p_v = PythonVersion(v_str.strip("/"))
res_list.append(p_v)
continue
if last_2["version"]:
res_list.insert(0, PythonVersion(last_2["version"]))
res_list.sort(key=lambda x: x.ver_t)
need_remove = []
for ver in res_list[::-1]:
if not self.test_last_version_is_stable(ver):
need_remove.append(ver)
else:
break
for ver in need_remove:
res_list.remove(ver)
return res_list 宝塔用_2f7c 发表于 2025-10-24 19:29
官方不修复自己修复吧,找到下面这个文件
/www/server/panel/btpyvm.py
顶部导入bs4
并没有找到这个文件
页:
1
[2]