Ich bin der Autor des Skripts, das in der Antwort von @ oneqeightyfour verlinkt ist. Obwohl ich etwas spät zur Party komme, ist hier eine modifizierte Version des Skripts, das Sie verwenden können.
Ich habe eine One-Click-Site gefunden , die behauptet, dies auch zu tun, aber ich konnte das nicht zum Laufen bringen. Vielleicht möchten Sie das zuerst versuchen?
Schritt 1: Holen Sie sich einen Tumblr-API-Schlüssel
Die Verwendung der API ist aus Programmiersicht viel einfacher als der Versuch, die Site zu kratzen. Tumblr T & Cs missbilligen auch den Massenzugriff auf Daten, ohne über die API zu gehen.
So erhalten Sie Ihren API-Schlüssel:
- Stellen Sie sicher, dass Sie bei Tumblr angemeldet sind
- Gehen Sie zu ihrer OAuth-Registrierungsseite .
Wählen Sie "Antrag registrieren" und verwenden Sie die folgenden Details:
- Anwendungsname: Hier finden Sie alle meine Originalbeiträge
- Anwendungsbeschreibung: Finden Sie alle Originalbeiträge auf einer Website. Das heißt, Beiträge, die keine Weblogs sind
- Standard-Rückruf-URL: /
Dies bringt Sie zurück zur ersten Seite. Ihnen wird ein OAuth-Verbraucherschlüssel angezeigt . Kopieren Sie dies - wir werden es in Kürze verwenden.
Schritt 2: Richten Sie das Skript ein
Dies ist die leicht modifizierte Version meines Skripts. Kopieren Sie diese, fügen Sie sie in einen Texteditor (z. B. TextEdit oder Notepad) ein und speichern Sie sie unter originals.py
.
Sie sollten die HOSTNAME
Variable durch die URL Ihres Blogs und die API_KEY
Variable durch den OAuth-Verbraucherschlüssel ersetzen, den Sie in Schritt 1 abgerufen haben.
#!/usr/bin/env python
import json
try:
from urllib.request import urlopen
except ImportError:
from urllib2 import urlopen
HOSTNAME = "alexwlchan.tumblr.com"
API_KEY = "abcdefg"
BASE_URL = (
"http://api.tumblr.com/v2/blog/{hostname}/"
"posts?api_key={key}&reblog_info=true"
) .format(hostname=HOSTNAME,key=API_KEY)
def api_response(url):
req = urlopen(url)
return json.loads(req.read())
jsonresponse = api_response(BASE_URL)
post_count = jsonresponse["response"]["total_posts"]
for count in range(0, post_count, 20):
jsonresponse = api_response("{url}&offset={count}".format(
url=BASE_URL,
count=count))
for post in jsonresponse["response"]["posts"]:
if "reblogged_from_name" not in post:
print(post["post_url"])
print("All finished!")
Schritt 3: Führen Sie das Skript aus
Dies ist ein Python-Skript, das für Python 2 oder 3 geeignet ist. Wenn Sie Google verwenden, sollten Sie Anweisungen zum Ausführen von Python-Skripten für das Betriebssystem Ihrer Wahl finden.
Das Skript druckt eine Liste von URLs aus, bei denen keine Tumulatorinformationen von der Tumblr-API abgerufen wurden. Bei meinen (sehr kurzen) Tests schien es eine Handvoll URLs zu geben, die tatsächlich Runden waren - ich habe nicht gegraben, um herauszufinden, warum dies der Fall ist.
Habe Spaß! :-)
Jemand im Internet hat ein Skript dafür geschrieben und Sie können es auf Github finden . Sie müssten die Parameter Hostname und API-Schlüssel in Ihren eigenen Tumblr-Hostnamen ändern und jeweils Ihren eigenen API-Schlüssel hinzufügen.
Ihr Hostname wäre so etwas wie "x.tumblr.com" (vergewissern Sie sich, dass Sie ihn mit "" Markierungen versehen).
Sie benötigen dann einen API-Schlüssel von Tumblr. Um dies zu tun:
Klicken Sie auf Antrag registrieren mit den folgenden Details:
Sie kehren zur vorherigen Seite zurück und erhalten Ihren Consumer-Schlüssel.
Kopieren Sie den Schlüssel, den Sie erhalten haben, und führen Sie ihn aus.
Wenn Sie nicht vertraut mit Skripten sind und Codierung, können Sie alternativ auch seine „Ein-Klick“ Lösung verwenden Website und einfach die URL Ihrer Tumblr bieten.
quelle