[newgrounds] fix flash file extraction (closes #1257)

… and add a 'flash' option to choose between flash and video formats.
pull/1294/head
Mike Fährmann 4 years ago
parent 534194bf92
commit 36f281330a
No known key found for this signature in database
GPG Key ID: 5680CA389D365A88

@ -1116,6 +1116,16 @@ Description
the first in the list gets chosen (usually `mp3`).
extractor.newgrounds.flash
--------------------------
Type
``bool``
Default
``true``
Description
Download original Adobe Flash animations instead of pre-rendered videos.
extractor.newgrounds.include
----------------------------
Type

@ -29,6 +29,7 @@ class NewgroundsExtractor(Extractor):
Extractor.__init__(self, match)
self.user = match.group(1)
self.user_root = "https://{}.newgrounds.com".format(self.user)
self.flash = self.config("flash", True)
def items(self):
self.login()
@ -92,18 +93,22 @@ class NewgroundsExtractor(Extractor):
}
def extract_post(self, post_url):
if "/art/view/" in post_url:
extract_data = self._extract_image_data
elif "/audio/listen/" in post_url:
extract_data = self._extract_audio_data
else:
extract_data = self._extract_media_data
if self.flash:
post_url += "/format/flash"
response = self.request(post_url, fatal=False)
if response.status_code >= 400:
return {}
page = response.text
extr = text.extract_from(page)
if "/art/view/" in post_url:
data = self._extract_image_data(extr, post_url)
elif "/audio/listen/" in post_url:
data = self._extract_audio_data(extr, post_url)
else:
data = self._extract_media_data(extr, post_url)
data = extract_data(extr, post_url)
data["_comment"] = extr('id="author_comments"', '</div>')
data["comment"] = text.unescape(text.remove_html(
@ -313,6 +318,11 @@ class NewgroundsMediaExtractor(NewgroundsExtractor):
"user" : "zj",
},
}),
# flash animation (#1257)
("https://www.newgrounds.com/portal/view/161181/format/flash", {
"pattern": r"https://uploads\.ungrounded\.net/161000"
r"/161181_ddautta_mask__550x281_\.swf\?f1081628129",
})
)
def __init__(self, match):

Loading…
Cancel
Save