当前位置:论坛首页 > Linux面板 > 求助

【已解答】python安装失败

发表在 Linux面板2025-10-21 10:46 [复制链接] 16 1668

发表于 2025-10-24 19:29:13 | 显示全部楼层
官方不修复自己修复吧,找到下面这个文件
/www/server/panel/btpyvm.py
顶部导入bs4

from bs4 import BeautifulSoup

修改解析代码替换下面的

    def __parser_xml(self, data_txt: str) -> List[PythonVersion]:
        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
            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
            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
使用道具 举报 回复 支持 反对
发表于 2025-10-27 02:15:00 | 显示全部楼层
宝塔用_2f7c 发表于 2025-10-24 19:29
官方不修复自己修复吧,找到下面这个文件
/www/server/panel/btpyvm.py
顶部导入bs4

并没有找到这个文件
使用道具 举报 回复 支持 反对
12
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

紧急运维服务

响应时间:3分钟

问题处理方式:宝塔专家1对1服务

工作时间:工作日:9:00 - 18:30

宝塔专业团队为您解决服务器疑难问题

点击联系技术分析

工作时间:09:00至18:30

快速回复 返回顶部 返回列表