C'è un modo per visualizzare tutti i miei post di Tumblr che non sono reblog?


11

Ho più di 7000 post nel mio account Tumblr. La stragrande maggioranza di essi sono "reblog" ma il resto sono post (immagini o testi) che ho caricato. C'è un modo per visualizzare in qualche modo questi post particolari? Un modo sarebbe stato se avessi usato un certo tag per questi post ma non l'ho fatto. Per riformulare la mia domanda: esiste un modo per visualizzare tutti i post di Tumblr disponibili la cui fonte era il mio account?

Risposte:


4

Sono l'autore della sceneggiatura collegata nella risposta di @ oneqeightyfour. Quindi, anche se sono un po 'in ritardo alla festa, ecco una versione modificata dello script che puoi usare.

Ho trovato un sito con un clic che afferma di fare anche questo, ma non sono riuscito a farlo funzionare. Potresti provare prima?


Passaggio 1: ottieni una chiave API Tumblr

L'utilizzo dell'API è molto più semplice, dal punto di vista della programmazione, rispetto al tentativo di demolire il sito. Inoltre, i Termini e condizioni di Tumblr aggrottano le sopracciglia quando si accede in blocco ai dati senza passare attraverso l'API.

Per ottenere la chiave API:

  1. Assicurati di aver effettuato l'accesso a Tumblr
  2. Vai alla loro pagina di registrazione OAuth .
  3. Seleziona "Registra applicazione" e utilizza i seguenti dettagli:

    • Nome applicazione: trova tutti i miei post originali
    • Descrizione dell'applicazione: trova tutti i post originali su un sito; cioè post che non sono blog
    • URL di richiamata predefinito: /
  4. Questo ti riporta alla prima pagina. Ti verrà mostrato un codice cliente OAuth . Copia questo: lo useremo a breve.

Passaggio 2: imposta lo script

Questa è la versione leggermente modificata della mia sceneggiatura. Copialo e incollalo in un editor di testo (ad es. TextEdit o Blocco note) e salvalo come originals.py.

È necessario sostituire la HOSTNAMEvariabile con l'URL del blog e la API_KEYvariabile con la chiave consumer OAuth recuperata nel passaggio 1.

#!/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!")

Passaggio 3: eseguire lo script

Questo è uno script Python, adatto per Python 2 o 3. Se cerchi Google, dovresti essere in grado di trovare le istruzioni per eseguire gli script Python per il tuo sistema operativo preferito.

Lo script stamperà un elenco di URL in cui non ha ricevuto alcuna informazione di reblog dall'API Tumblr. Nei miei (molto brevi) test, mi è sembrato di raccogliere una manciata di URL che erano in realtà reblog - non ho fatto alcuno scavo per scoprire perché è così.

Divertiti! :-)


Grazie mille, anche se è una risposta tardiva :)
Aventinus,

3

Qualcuno su Internet ha scritto una sceneggiatura per questo e puoi trovarla su Github . Dovresti cambiare i parametri del nome host e della chiave API con il tuo nome host tumblr e aggiungere rispettivamente la tua chiave API.

Il tuo nome host sarebbe simile a "x.tumblr.com", (assicurati di avvolgerlo con i segni "").

Sarà quindi necessario ottenere una chiave API da Tumblr. Per fare questo:

  1. Assicurati di aver effettuato l'accesso a Tumblr.
  2. Accedi alla pagina di registrazione di OAuth .
  3. Fai clic su Registra applicazione con i seguenti dettagli:

    • Nome applicazione: Post Finder senza tag
    • Descrizione: trova post senza tag
    • URL di richiamata predefinito: /
  4. Verrai riportato alla pagina precedente e ti verrà fornita la tua chiave cliente.

  5. Copia incolla la chiave che hai ottenuto nello script ed eseguilo.

Se non hai familiarità con gli script e la codifica, puoi in alternativa utilizzare il suo sito di soluzione "one-click" e fornire semplicemente l'URL del tuo Tumblr.


1
Questa è la risposta più vicina ancora, ma non del tutto rilevante. Questo software cerca i post che non contengono tag. Sebbene utile, non è necessariamente vero che i miei post non avrebbero un tag. Nel mio esempio ho detto che sarebbe stato molto semplice se avessi usato un certo tag per taggare tutti i miei post originali.
Aventinus,

Mi è appena venuto in mente che ho assolutamente trascurato ed escluso il fatto che alcuni dei tuoi post di origine avrebbero potuto essere taggati e che quindi renderebbero questo approccio irrilevante. Non ho alcuna familiarità con la codifica, ma se lo sei, forse puoi cercare di modificare gli interi dalla selezione dei post di origine senza tag ai post di origine con tag?
Oneqeightyfour

Sì, ci ho pensato davvero. Forse regolerò il codice. Tuttavia, questa è la risposta più vicina ancora.
Aventinus,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.