블로그가 아닌 모든 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.