[subscribestar] extend fix + add test

some attachments are inside an element with an additional class besides
'doc_preview', e.g. 'class="doc_preview for_post"'
This commit is contained in:
Mike Fährmann
2025-01-02 18:22:15 +01:00
parent a46f7981ee
commit 671297a8cc
2 changed files with 23 additions and 2 deletions

View File

@@ -11,6 +11,7 @@
from .common import Extractor, Message
from .. import text, util, exception
from ..cache import cache
import re
BASE_PATTERN = r"(?:https?://)?(?:www\.)?subscribestar\.(com|adult)"
@@ -100,7 +101,8 @@ class SubscribestarExtractor(Extractor):
attachments = text.extr(
html, 'class="uploads-docs"', 'class="post-edit_form"')
if attachments:
for att in attachments.split('class="doc_preview"')[1:]:
for att in re.split(
r'class="doc_preview[" ]', attachments)[1:]:
media.append({
"id" : text.parse_int(text.extr(
att, 'data-upload-id="', '"')),
@@ -113,7 +115,8 @@ class SubscribestarExtractor(Extractor):
audios = text.extr(
html, 'class="uploads-audios"', 'class="post-edit_form"')
if audios:
for audio in audios.split('class="audio_preview-data"')[1:]:
for audio in re.split(
r'class="audio_preview-data[" ]', audios)[1:]:
media.append({
"id" : text.parse_int(text.extr(
audio, 'data-upload-id="', '"')),