## [Python] 티스토리 API를 사용하여 작성글 쓰기(2) 코딩정보/Python 2021-01-14 09:23:36 * * * 안녕하세요~ 요즘 블로그에 많은 시간을 할애하고 있네요ㅎㅎ 딥러닝 분석을 통한 주식 정보 자동 포스팅 구연하랴...오류수정...개선...끝이 안보이네요ㅎ 거기에 블로그의 원래 취지인 코딩 정보 공유까지 할려니 하루가 후딱 지나가고 있습니다 휴식과 일의 배율이 참 중요하다는데..코로나로 인해 강제 근무를 더 하게 되는거 같습니다 조만간 나올 백신 종전이 될까요?ㅎ 사실 개인적으로는 백신이 나와도 선뜻 못 맞을거 같습니다 저는ㅋㅋ 이번 포스팅은 저번 포스팅에 이은 2탄~ <https://codingman.tistory.com/152> [ [Python] 티스토리 API를 사용하여 작성글 쓰기(1) 안녕하세요 코딩연습생입니다~ 저번 포스팅에 이어 파이썬 언어를 통해 티스토리 API를 사용하여 자동 업로드를 구현 두번째 포스팅 입니다 https://codingman.tistory.com/147?category=762038 [Python] 티스토 codingman.tistory.com ](https://codingman.tistory.com/152) 파이썬에서 티스토리API를 사용하여 작성글 올리기 입니다 저번 포스팅에서 글을 올릴 위치를 지정하기 위한 카테고리 ID 조회까지 구현해 봤는데요 이번에는 카테고리 ID를 이용해서 실질적인 글을 올리는 방법에 대해서 포스팅 할려고 합니다 해당 포스팅은 분량이 많아 연재식으로 작성 중인데 처음오신분들은 티스토리 API 셋팅 방법 부터 보고 오셔야 이해가 되실거라 생각됩니다 <https://codingman.tistory.com/147?category=762038> [ [Python] 티스토리 API 사용을 위한 Access_token 구하기 안녕하세요 코딩연습생입니다~ 이번 포스팅은 파이썬 언어를 통해 티스토리 API를 사용하여 자동 업로드를 구현해 볼려고 합니다 구현에 앞서 몇가지 준비사항들이 필요한데 1. Token 키를 알아야 codingman.tistory.com ](https://codingman.tistory.com/147?category=762038) 처음 티스토리 API설정이 끝나고 카테고리 ID를 조회하여 찾으셨다면 이제 쉽게 글을 올리실수 있습니다 일단 티스토리가 html 형식으로 글을 쓰게 됩니다 쉬운 방법은 일단 PC를 통해 샘플 글을 미리 작성을 합니다 샘플 글을 작성하신 다음 우측 상단에 기본모드를 html 모드로 변경해 줍니다 ![](/assets/images/python_티스토리_api를_사용하여_작성글_쓰기_2/img.png) html 모드로 변경을 하면 아래와 같은 형태로 변경됩니다 ![](/assets/images/python_티스토리_api를_사용하여_작성글_쓰기_2/img_1.png) 그럼 컨텐츠 영역에 글을 모두 복사 한뒤 파이썬에서 분자열 변수에 담아서 코딩을 합니다 def get_content(self): html_content = '

* 현재 개발 중인 주식 분석 프로그램 실행 결과 값입니다

' html_content += '

  이 자료는 주식 투자 목적이 아닌 프로그램 분석율 계산을 위한 값이므로 절대 신뢰하지 마세요

' html_content += '

  (이자료를 통한 투자 손해에 대해 필자는 배상하지 않습니다)

' html_content += '

 

' html_content += '

※ 해당 정보는 프로그램 결과값이 정리하여 자동으로 포스팅되는 글라는 점을 참고해 주세요

' html_content += '

   (' + nowdate + '프로그램이 자동으로 포스팅한 자료 입니다)

' html_content += '

 

' html_content += '

▣' + nowdate + '_급등 주가 리스트

' html_content += '

(현재 기준 지난 30일간 주가가 10배 이상 급등한 주가 리스트입니다)

' html_content += '

 

' html_content += '

▣' + nowdate + '_매수 예상 종목

' html_content += '

(프로그램에서 현재 기준 매수할 경우 승률이 가장 좋은 리스트 입니다)

' html_content += '

 

' html_content += '

▣ 관심 주가별 예상 종가 리스트

' html_content += '

(과거 데이터를 이용하여 텐서플로워를 통해 최종 예상 종가를 예측한 값입니다)

' html_content += '

(신뢰성은 매우 낮습니다ㅠ 뭔가 알고리즘을 바꿔야 할거 같습니다)

' html_content += '

 

' html_content += '

위의 주가 리스트는 ' + nowtime + ' 기준으로 취합된 데이터로 작성된 자료 입니다

' html_content += '

프로그램 결과에 대한 값을 티스토리에 자동 포스팅 중입니다

' html_content += '

프로그램 결과 평일 기준 오전, 오후 두번 포스팅 하고 있습니다

' html_content += '

해당 자료는 테스트 및 분석용으로 사용합니다

' html_content += '

실제 투자에 활용하고자 할 경우 참고만 하시고 최종 분석은 본인이 해야 합니다

' html_content += '

감사합니다

' html_file = open(html_path, 'w+') html_file.write(html_content) html_file.close() 이런식으로 아예 함수로 하나를 만들었습니다 그런뒤 해당 변수의 내용을 토대로 html 샘플 파일을 만들었습니다 ![](/assets/images/python_티스토리_api를_사용하여_작성글_쓰기_2/img_2.png) 이부분이 바로 html 파일로 저장하는 구문입니다 그런 다음 아래와 같이 티스토리 API를 동작시킬 함수를 만들어 줍니다 def get_write(self): self.get_content() #생성된 html 파일의 경로. html_path = os.path.join(settings.BASE_DIR, "tistory/html/html_content.html") now = datetime.now() # current date and time today = now.strftime("%Y.%m.%d") nowtime = now.strftime('%H:%M:%S') title = '[주가분석요약] ' + today + '_프로그램을 활용한 주식분석_예상결과(' + nowtime + ')' f = open(html_path, "r", encoding='cp949') content = f.read() print(content) #with open(html_path, "r", encoding='ISO-8859-1') as file: # print(file) # content = file.read() visibility = "3" # 발행상태 0비공개-기본, 1보고,3발행 category_id = "834763" # 카테고리 아이디 기본값 0 slogan = title # 문자주소 tag = "주가분석, 급등주, 퀸트분석, 종가예측, 관심종목, 주식, 종목," + today + " 주식정보" # 태그 ,로 구분 acceptComment = "" # 댓글 허용 (0, 1 - 기본값) password = "" # 보호글 비밀번호 url = 'https://www.tistory.com/apis/post/write' data = {'access_token': access_token, 'output': 'json', 'blogName': blog_name, 'title': title, 'content': content, 'visibility': visibility, 'category': category_id, 'slogan': slogan, 'tag': tag, 'acceptComment': acceptComment, 'password': password} r = requests.post(url, data=data) print(r, r.text) ![](/assets/images/python_티스토리_api를_사용하여_작성글_쓰기_2/img_3.png) 해당 구문에서 아까 글을 올리고자 하는 문자열을 html 파일 형태로 저장하고 ![](/assets/images/python_티스토리_api를_사용하여_작성글_쓰기_2/img_4.png) 주석에 설명되어 있듯이 저장된 html을 읽어오는 구문 입니다 ![](/assets/images/python_티스토리_api를_사용하여_작성글_쓰기_2/img_5.png) 그리고 requests 형태로 변경하기 위해 여러가지 변수의 값을 지정했습니다 1) title : 글 제목 2) content : 본문 내용 3) visivbility : 발생상태 4) categort_id : 올리고자 하는 카테고리 ID 5) slogan : 주석(?) 같은 의미 6) tag : 글 태그 입력 7) acceptComment : 댓글 권한 설정 8) password : 보호글 비밀번호 9) url : 티스토리 API 동작 주소 10) data : 위의 종합 정보를 requests 형태로 조합 Dataframe에 위의 정보 정도로 취합되는거 같습니다 해당 구문을 모두 작성하신뒤 ![](/assets/images/python_티스토리_api를_사용하여_작성글_쓰기_2/img_6.png) 이렇게 __init__ 부분에 다음과 같이 호출을 하게 되면 저장해 놓은 html의 내용이 본문의 내용으로 업로드 되어 집니다 정상 적으로 글쓰기가 동작했다면 다음과 같은 리턴 값이 오게 됩니다 ![](/assets/images/python_티스토리_api를_사용하여_작성글_쓰기_2/img_7.png) 여기까지 하셨다면 성공하신겁니다 다음 포스팅에서는 본문 내용에 이미지 파일을 넣어서 작성글을 만들어보는 포스팅 방법을 올릴 예정입니다 밑에 이미지는 현재 제가 프로그램을 통해 자동 업로드 하고 있는 결과입니다 여러분도 정기적인 정보나 대량의 자료를 업로드해야할시 위의 정보로 구현하여 사용해 보시기 바랍니다 ![](/assets/images/python_티스토리_api를_사용하여_작성글_쓰기_2/img_8.png) #티스토리 자동 포스팅 #티스토리 API 사용방법 #티스토리 API 글작성 #파이썬 자동 글 올리기 #파이썬 블로그 글올리기
(*No embedded English lines found. Add translations later.*)