Salvia Forum

( Für Mitglieder: Zur Anmeldung | Für Gäste: Zur Registrierung )


 
Reply to this topicStart new topicStart Poll

> Abload.de Abschaltung, Bilder nun auf SC-Server

post May 25 2024, 03:05
Beitragslink: #1


Usurpator
Group Icon

Gruppe: Admin
Beiträge: 544
Mitglied seit: 7.Oct 2002






(Danke an Hogie, der mich darauf aufmerksam gemacht hat und dran geblieben ist.)

Abload.de stellt seine Dienste ein und wir haben hier viele wertvolle Bilder in Beiträgen, die auf abload.de hochgeladen wurden.

Ich habe die aus der Datenbank extrahiert und auf unseren Server geladen. Zugleich musste sowieso am Server was geändert werden, denn ich kam nicht mehr in den Container rein und die DB hätte einen Neustart des Containers nicht überlebt.

Ganz sicher bin ich noch nicht, ob wirklich alles so geklappt hat, wie es sollte... Es gab einige Errors und es war wider erwarten doch viel Handarbeit nötig, wie man an der Uhrzeit dieses Postings erkennen kann.

Ich stelle mein Download-Script (python3) hier rein, vielleicht nützt es auch anderen Admins. Es ist nicht schön, aber erfüllt seinen Zweck: Alle Bilder von abload.de, die in der Datenbank vorkommen, herunterladen.

Input ist Datenbank dump als .sql file, Output sind die Bilddateien.

CODE

import re
import os
import requests
from time import sleep
from urllib.parse import urlparse

with open('/tmp/db/database.sql', 'r') as file:
   sql_content = file.read()

url_pattern = r'https?://(?:www\.)?abload\.de/(?:\S+?)\.(?:png|jpe?g|gif)'
matches = re.findall(url_pattern, sql_content, re.IGNORECASE)

downloaded_urls = set()

for url in matches:
   try:
       url = url.replace("http://", "https://")
       url = url.replace("image.php?img=", "img/")

       headers = {
           'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:97.0) Gecko/20100101 Firefox/97.0'
       }

       if "/thumb/" in url:
           print(f"Skipping {url} - Contains '/thumb/'")
           continue

       if url in downloaded_urls:
           print(f"Skipping {url} - Already downloaded")
           continue

       if os.path.exists(os.path.join('/tmp/abload/abload-backup', url.split('/')[-1])):
           print(f"Skipping {url} - File already exists")
           continue

       response = requests.get(url, headers=headers, allow_redirects=True)

       if response.status_code == 200 and response.headers.get('Content-Type', '').startswith('image'):
           print(f"Downloading {url}")

           file_extension = urlparse(url).path.split('.')[-1]
           
           with open(f"{url.split('/')[-1]}", 'wb') as file:
               file.write(response.content)

           downloaded_urls.add(url)
           sleep(1)
       else:
           print(f"Skipping {url} - Not an image or failed to fetch. Status code: {response.status_code}")

   except Exception as e:
       print(f"Error processing {url}: {str(e)}")


--------------------
smart & headshop
"Popular congresses are the end of the journey of the masses' movement in its quest for democracy."
Go to the top of the pageProfile CardPM
+Quote Post
post May 25 2024, 17:55
Beitragslink: #2


Karussellanschubser
****

Gruppe: V.I.P.
Beiträge: 2,946
Mitglied seit: 25.Jan 2007

Aus: DMT-Dom/Salviawelt





Vielen Dank für deinen Mühe!! good.gif good.gif

Stimmt, abload.de hat neulich abgeschaltet. Das mit den externen Hostern ist immer etwas problematisch. archive.org gibt es noch, wobei mir da auch schon aufgefallen ist, dass gelegentlich Bilder verschwunden sind.


--------------------
Ausgesetzt in der Salviawelt, bei mir habe ich nur meine Bong und ein Feuerzeug. Entitäten werden mich begleiten. Ich zeige Ihnen, wie man hier überlebt!
Go to the top of the pageProfile CardPM
+Quote Post
post May 26 2024, 00:11
Beitragslink: #3


Salvianaut
****

Gruppe: V.I.P.
Beiträge: 3,181
Mitglied seit: 19.Oct 2010
Alter: 48
Aus: Elsass (France), next City: Karlsruhe/Straßbourg





Scheint prima zu funktionieren, danke! w00t.png

Ich bin mir noch nicht sicher, was ich für die Zukunft nehmen soll. Ich möchte nur Anbieter, die saubere direct-Links anbieten. direktupload.eu scheint zu gehen. Ist nur auf der Website etwas versteckt und erfordert einen Klick mehr, als die html-Links. Die löschen wohl Bilder, die ein Jahr lang nicht aufgerufen werden. Bei hier im Forum geposteten Bildern sollte das aber nie passieren.

Oder hat jemand einen besseren Vorschlag?




--------------------
angelogen bin ich erst, wenn ich es glaube...
Go to the top of the pageProfile CardPM
+Quote Post


Reply to this topicTopic OptionsStart new topic

5 Besucher zu diesem Thema (Gäste: 5 | Anonyme Besucher: 0)
Mitglieder: 0 |
 

stats
Aktuelles Datum: 25th June 2024 - 01:30
  
Linux powered Lighttpd Wir respektieren deine Privatsphäre. Keine IP-Speicherung! Stoppt die Vorratsdatenspeicherung!