From ff07841dd6f838deecb804ea78a5e561849b7186 Mon Sep 17 00:00:00 2001 From: jxxghp Date: Thu, 28 Mar 2024 13:20:48 +0800 Subject: [PATCH] roll back site test --- app/chain/site.py | 38 ++++++++++++++------------------------ 1 file changed, 14 insertions(+), 24 deletions(-) diff --git a/app/chain/site.py b/app/chain/site.py index f5db1df5..d9fc9ecc 100644 --- a/app/chain/site.py +++ b/app/chain/site.py @@ -5,7 +5,6 @@ from typing import Union from urllib.parse import urljoin from lxml import etree -from ruamel.yaml import CommentedMap from app.chain import ChainBase from app.core.config import settings @@ -327,19 +326,24 @@ class SiteChain(ChainBase): logger.info(f"清理站点配置:{key}") self.systemconfig.delete(key) - def test(self, site_info: Union[str, CommentedMap, dict]) -> Tuple[bool, str]: + def test(self, url: str) -> Tuple[bool, str]: """ 测试站点是否可用 - :param site_info: 站点域名或者站点的数据对象 + :param url: 站点域名 :return: (是否可用, 错误信息) """ # 检查域名是否可用 - if isinstance(site_info, str): - url = site_info - domain = StringUtils.get_url_domain(url) - site_info = self.siteoper.get_by_domain(domain) - if not site_info: - return False, f"站点【{url}】不存在" + domain = StringUtils.get_url_domain(url) + site_info = self.siteoper.get_by_domain(domain) + if not site_info: + return False, f"站点【{url}】不存在" + + # 模拟登录 + try: + # 特殊站点测试 + if self.special_site_test.get(domain): + return self.special_site_test[domain](site_info) + # 通用站点测试 site_url = site_info.url site_cookie = site_info.cookie @@ -348,21 +352,7 @@ class SiteChain(ChainBase): public = site_info.public proxies = settings.PROXY if site_info.proxy else None proxy_server = settings.PROXY_SERVER if site_info.proxy else None - else: - # 外部站点测试 - site_url = site_info.get("url") - domain = StringUtils.get_url_domain(site_url) - site_cookie = site_info.get("cookie") - ua = site_info.get("ua") - render = site_info.get("render") - public = site_info.get("public") - proxies = settings.PROXY if site_info.get("proxy") else None - proxy_server = settings.PROXY_SERVER if site_info.get("proxy") else None - # 模拟登录 - try: - # 特殊站点测试 - if self.special_site_test.get(domain): - return self.special_site_test[domain](site_info) + # 访问链接 if render: page_source = PlaywrightHelper().get_page_source(url=site_url,