ブログではないすべてのTumblr投稿を表示する方法はありますか?


11

Tumblrアカウントに7000を超える投稿があります。それらの大部分は「ブログ」ですが、残りは私がアップロードした投稿(画像またはテキスト)です。これらの特定の投稿を何らかの形で表示する方法はありますか?これらの投稿に特定のタグを使用した場合は、1つの方法でしたが、使用していませんでした。私の質問を言い換えると:私のアカウントをソースとする利用可能なすべてのTumblr投稿を表示する方法はありますか?

回答:


4

@oneqeightyfourの回答にリンクされているスクリプトの作成者です。パーティーには少し遅れますが、使用できるスクリプトの修正バージョンを次に示します。

私もこれを行うと主張するワンクリックサイトを見つけましたが、それを機能させることができませんでした。あなたは最初にそれを試してみたいかもしれませんか?


ステップ1:Tumblr APIキーを取得する

APIの使用は、プログラミングの観点からすると、サイトをこすることよりもはるかに簡単です。また、Tumblr T&Cは、APIを経由せずにデータに一括アクセスすると不快になります。

APIキーを取得するには:

  1. Tumblrにログインしていることを確認してください
  2. OAuth登録ページに移動します
  3. 「アプリケーションの登録」を選択し、次の詳細を使用します。

    • アプリケーション名:元の投稿をすべて検索
    • アプリケーションの説明:サイト上のすべての元の投稿を検索します。つまり、ブログではない投稿
    • デフォルトのコールバックURL: /
  4. これにより、最初のページに戻ります。OAuthコンシューマキーが表示されます。これをコピーしてください。まもなく使用します。

ステップ2:スクリプトを設定する

これは、スクリプトを少し変更したバージョンです。これをコピーしてテキストエディタ(TextEditやメモ帳など)に貼り付け、として保存しますoriginals.py

HOSTNAME変数をブログのURLに置き換え、変数をAPI_KEYステップ1で取得したOAuthコンシューマーキーに置き換えます。

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

ステップ3:スクリプトを実行する

これは、Python 2または3に適したPythonスクリプトです。Googleを使用している場合は、選択したオペレーティングシステムでPythonスクリプトを実行するための手順を見つけることができます。

スクリプトは、Tumblr APIからブログ情報を取得しなかったURLのリストを出力します。私の(非常に短い)テストでは、実際にはブログである少数のURLを取得しているように見えました。これが原因であるかどうかを調べるための調査は行っていません。

楽しんで!:-)


遅い回答ですが、どうもありがとう:)
Aventinus

3

インターネット上の誰かがこのためのスクリプトを書いており、Githubで見つけることができます。ホスト名とAPIキーのパラメーターを独自のtumblrホスト名に変更し、独自のAPIキーをそれぞれ追加する必要があります。

ホスト名は "x.tumblr.com"のようになります(必ず ""マークで囲んでください)。

次に、TumblrからAPIキーを取得する必要があります。これをする:

  1. Tumblrにログインしていることを確認します。
  2. OAuth登録ページにアクセスします
  3. 次の詳細で[アプリケーションの登録]をクリックします。

    • アプリケーション名:タグなし投稿ファインダー
    • 説明:タグの付いていない投稿を検索します
    • デフォルトのコールバックURL: /
  4. 前のページに戻り、コンシューマキーが提供されます。

  5. 取得したキーをコピーしてスクリプトに貼り付け、実行します。

スクリプトやコーディングに慣れていない場合は、代わりに彼の「ワンクリック」ソリューションサイトを使用して、TumblrのURLを指定することもできます。


1
これはまだ最も近い答えですが、完全に関連しているわけではありません。このソフトウェアは、タグが付いていない投稿を探します。便利ではありますが、私の投稿にタグが付いていないことは必ずしも必要ではありません。私の例では、元の投稿のすべてにタグを付けるために特定のタグを使用した場合、それは本当に簡単だったと述べました。
Aventinus

私は、あなたのソース投稿の一部にタグが付けられている可能性があるという事実を完全に見落とし、除外したことに気づきました。その場合、このアプローチは無関係になります。私はコーディングにまったく精通していませんが、そうであれば、タグなしのソース投稿の選択からタグ付きのソース投稿への整数の修正を検討できるでしょうか?
oneqeightyfour 2016年

はい、私は実際にそれを考えました。多分私はコードを調整します。それでもなお、これはまだ最も近い答えです。
Aventinus
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.