From abc26b65ed4cb4837991a9ce74b6200cc89265ee Mon Sep 17 00:00:00 2001 From: jxxghp Date: Tue, 12 Mar 2024 17:01:41 +0800 Subject: [PATCH] =?UTF-8?q?fix=20#1645=20=E5=85=BC=E5=AE=B9=E8=9D=B4?= =?UTF-8?q?=E8=9D=B6=E7=A7=8D=E5=AD=90=E9=93=BE=E6=8E=A5=E6=A0=BC=E5=BC=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/modules/indexer/spider.py | 16 +++++++++++++--- 1 file changed, 13 insertions(+), 3 deletions(-) diff --git a/app/modules/indexer/spider.py b/app/modules/indexer/spider.py index ea8669bc..afb60544 100644 --- a/app/modules/indexer/spider.py +++ b/app/modules/indexer/spider.py @@ -383,9 +383,19 @@ class TorrentSpider: item = self.__index(items, selector) download_link = self.__filter_text(item, selector.get('filters')) if download_link: - if not download_link.startswith("http") and not download_link.startswith("magnet"): - self.torrents_info['enclosure'] = self.domain + download_link[1:] if download_link.startswith( - "/") else self.domain + download_link + if not download_link.startswith("http") \ + and not download_link.startswith("magnet"): + _scheme, _domain = StringUtils.get_url_netloc(self.domain) + if _domain in download_link: + if download_link.startswith("/"): + self.torrents_info['enclosure'] = f"{_scheme}:{download_link}" + else: + self.torrents_info['enclosure'] = f"{_scheme}://{download_link}" + else: + if download_link.startswith("/"): + self.torrents_info['enclosure'] = f"{self.domain}{download_link[1:]}" + else: + self.torrents_info['enclosure'] = f"{self.domain}{download_link}" else: self.torrents_info['enclosure'] = download_link