본문 바로가기
Python

[파이썬] 티스토리 블로그 검색 API 확인

by 퍼포먼스마케팅코더 2022. 7. 25.
반응형

이거는 티스토리 블로api로 검색을 하는 거예요. 단순히 티스토리를 검색하는 게 아니고 다음에서 나오는 블로그를 검색하는 건데 웬만해서는 티스토리가 나옵니다. 다음 검색 블로검색 안에 어느 정도 검색이 노출이 되는가 그걸 확인 차원에서 보는 거예요.

파이썬 티스토리 블로그 검색 API 확인

그래서 그래서 파이썬 코드로 두 가지가 되어 있기는 한데 아주 단순합니다. api t만 입력만 해놓고요 그다음에 키워드 안에 검색을 치면 바로 검색 결과가 나옵니다. 검색 결과가 뭐가 나와 이게 보면 한 세 가지 정도가 나오는데 블로네임과 그다음에 제목 그다음에 내용 다음에 날짜가 나와요. 그래서 보면 이제 다음카카오 카카오 쪽에 다음 검색 결과가 뭘 중요시하는지 눈에 보이는 게 보입니다. 최신성과 혹은 콘텐츠 안에 키워드가 어느 정도 되느냐 그것에 따라서 보이는 건데요. 

 

import requests
import json

keyword = '갤럭시Z플립3케이스'

url = "https://dapi.kakao.com/v2/search/blog?&query=" + keyword

queryString = {"query" : keyword }

header = {'Authorization' : 'KakaoAK #api키 입력' }

r = requests.get(url, headers=header, params=queryString)

result = r.json()

#blog_urls = []

#for i in range(0, 10) :
#    url =result['documents'][i]['url']
#    blog_urls.append(url)
#    print(url)
    

#
#for i in range(0, 10) : #제목
#    title = result['documents'][i]['title']
#    blog_urls.append(url)
#    print(title)

 

그래서 이 파이썬 코드를 돌려보면 세 가지가 나올 거예요. 하나는 블로네임 이름하고 뭐 제목 내용 이거는 다들 아시겠지만 이 외에 날짜가 있습니다. 근데 날짜를 변환을 했어요. 날짜 변화를 하는 게 생년 월 1 연도 월 1 이거 포맷 형식에 따라서 나오도록 했습니다. 이에 url도 나오도록 해놨었고요 이외에 추가적으로도 변경을 해서 할 수도 있습니다. 예를 들자면 두 번째 페이지 첫 번째 페이지 안에서 상위 10개만 보이도록 하는 내용만 코딩으로 작성을 해놨는데 이게 페이지 두 번째 세 번째 이거 있는 것들도 마찬가지로 뽑아낼 수는 있어요. 뽑아낼 수는 있는데 상위 1페이지가 가장 중요하니까 그것을 기본으로 해서 넣었다고 보시면 되겠습니다.

 

from datetime import datetime

n = 1

for i in result['documents'] :
    blogname = i['blogname'] #블로그 네임
    title = i['title'] #제목
    title = title.replace("<b>", "")
    title = title.replace("</b>", "")
    contents = i['contents'] #내용
    contents = contents.replace("<b>", "")
    contents = contents.replace("</b>", "")
    blog_date = i['datetime'] #특정 문자열만 반환
    blog_date = blog_date[:10] #날짜만
    format = '%Y-%m-%d'
    datetime_results = datetime.strptime(blog_date, format).date()  #날짜만
    url = i['url'] #url
    print(str(n) + ',' + title +',' + blogname)
    print('-----------------------------------------------')
    print(str(n) +',' + contents)
    print('-----------------------------------------------')
    print(str(url))
    print('-----------------------------------------------')
    n +=1
print(datetime_results)

 

반응형

댓글