[pixeldrain] warn about hotlink-protected files (#8803)
https://github.com/mikf/gallery-dl/issues/8803#issuecomment-3733498009
This commit is contained in:
@@ -24,6 +24,16 @@ class PixeldrainExtractor(Extractor):
|
|||||||
if api_key := self.config("api-key"):
|
if api_key := self.config("api-key"):
|
||||||
self.session.auth = util.HTTPBasicAuth("", api_key)
|
self.session.auth = util.HTTPBasicAuth("", api_key)
|
||||||
|
|
||||||
|
def _available(self, file):
|
||||||
|
if not file.get("availability"):
|
||||||
|
return True
|
||||||
|
|
||||||
|
self.status |= 1
|
||||||
|
self.log.debug(file["availability"])
|
||||||
|
self.log.warning(
|
||||||
|
"%s: '%s'", file["name"], file["availability_message"])
|
||||||
|
return False
|
||||||
|
|
||||||
|
|
||||||
class PixeldrainFileExtractor(PixeldrainExtractor):
|
class PixeldrainFileExtractor(PixeldrainExtractor):
|
||||||
"""Extractor for pixeldrain files"""
|
"""Extractor for pixeldrain files"""
|
||||||
@@ -45,7 +55,12 @@ class PixeldrainFileExtractor(PixeldrainExtractor):
|
|||||||
|
|
||||||
text.nameext_from_name(file["name"], file)
|
text.nameext_from_name(file["name"], file)
|
||||||
yield Message.Directory, "", file
|
yield Message.Directory, "", file
|
||||||
yield Message.Url, file["url"], file
|
if file.get("availability"):
|
||||||
|
self.status |= 1
|
||||||
|
self.log.debug(file["availability"])
|
||||||
|
self.log.error("'%s'", file["availability_message"])
|
||||||
|
else:
|
||||||
|
yield Message.Url, file["url"], file
|
||||||
|
|
||||||
|
|
||||||
class PixeldrainAlbumExtractor(PixeldrainExtractor):
|
class PixeldrainAlbumExtractor(PixeldrainExtractor):
|
||||||
@@ -103,6 +118,8 @@ class PixeldrainAlbumExtractor(PixeldrainExtractor):
|
|||||||
|
|
||||||
yield Message.Directory, "", {"album": album}
|
yield Message.Directory, "", {"album": album}
|
||||||
for num, file in enumerate(files, idx+1):
|
for num, file in enumerate(files, idx+1):
|
||||||
|
if not self._available(file):
|
||||||
|
continue
|
||||||
file["album"] = album
|
file["album"] = album
|
||||||
file["num"] = num
|
file["num"] = num
|
||||||
file["url"] = url = f"{self.root}/api/file/{file['id']}?download"
|
file["url"] = url = f"{self.root}/api/file/{file['id']}?download"
|
||||||
@@ -156,6 +173,8 @@ class PixeldrainFolderExtractor(PixeldrainExtractor):
|
|||||||
for child in children:
|
for child in children:
|
||||||
if child["type"] == "file":
|
if child["type"] == "file":
|
||||||
num += 1
|
num += 1
|
||||||
|
if not self._available(child):
|
||||||
|
continue
|
||||||
url = f"{self.root}/api/filesystem{child['path']}?attach"
|
url = f"{self.root}/api/filesystem{child['path']}?attach"
|
||||||
share_url = f"{self.root}/d{child['path']}"
|
share_url = f"{self.root}/d{child['path']}"
|
||||||
data = self.metadata(child)
|
data = self.metadata(child)
|
||||||
|
|||||||
Reference in New Issue
Block a user