블로그가 아닌 모든 Tumblr 게시물을 볼 수있는 방법이 있습니까?


11

Tumblr 계정에 7000 개 이상의 게시물이 있습니다. 그들 중 대다수는 "블로그"이지만 나머지는 내가 올린 게시물 (이미지 또는 텍스트)입니다. 이 특정 게시물을 어떻게 든 볼 수 있습니까? 한 가지 방법은 이러한 게시물에 특정 태그를 사용했지만 그렇지 않은 경우였습니다. 내 질문을 바꾸려면 다음을 수행하십시오. 소스가 본인의 계정 인 모든 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_KEY1 단계에서 검색 한 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 키의 매개 변수를 고유 한 텀블러 호스트 이름으로 변경하고 각각 고유 한 API 키를 추가해야합니다.

호스트 이름은 "x.tumblr.com"과 같습니다 ( ""표시로 묶어야합니다).

그런 다음 Tumblr에서 API 키를 가져와야합니다. 이것을하기 위해:

  1. Tumblr에 로그인했는지 확인하십시오.
  2. OAuth 등록 페이지에 액세스 하십시오 .
  3. 다음 세부 정보가있는 등록 신청서를 클릭하십시오.

    • 응용 프로그램 이름 : 태그가 지정 되지 않은 게시물 찾기
    • 설명 : 태그가없는 게시물을 찾습니다.
    • 기본 콜백 URL : /
  4. 이전 페이지로 돌아가 소비자 키가 제공됩니다.

  5. 가져온 키를 스크립트에 붙여넣고 실행하십시오.

스크립트와 코딩에 익숙하지 않은 경우 "원 클릭"솔루션 사이트를 사용 하고 Tumblr의 URL을 제공 할 수도 있습니다.


1
이것은 가장 가까운 대답이지만 완전히 관련이 없습니다. 이 소프트웨어는 태그 가 없는 게시물을 찾습니다 . 유용하지만 내 게시물에 태그가없는 것은 사실이 아닙니다. 내 예에서는 특정 태그를 사용하여 모든 원본 게시물에 태그를 지정 하면 정말 쉬울 것이라고 언급했습니다 .
— Aventinus

방금 간과하고 소스 게시물 중 일부에 태그를 달았을 수 있다는 사실을 배제 하고이 접근법을 관련성이 없게 만드는 사실이 나에게 발생했습니다. 코딩에 익숙하지는 않지만 태그가 지정되지 않은 소스 게시물 선택에서 태그가 지정된 소스 게시물로 정수를 수정하는 것을 볼 수 있습니까?
— oneqeightyfour

예, 실제로 생각했습니다. 아마도 코드를 조정할 것입니다. 결코 적지 않습니다. 이것은 아직 가장 가까운 대답입니다.
— Aventinus
당사 사이트를 사용함과 동시에 당사의 쿠키 정책과 개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.