어쩔 수 없어, 내가 트위터 API의 기본 사용법을 가르쳐 줄게.
개시하다
저는 DOKOSORE 주식회사의 전나무 엔지니어입니다.
트위터를 자유롭게 사용할 수 있도록 트위터 API를 파악할 필요가 있다.그러나 트위터 API는 사람마다 쓰는 방법이 다르기 때문에 많은 초보자들이 당혹스러워한다.나 자신도 문외한인데 최근'어? 이 작법을 지키면 계속 예쁘게 쓸 수 있겠다'는 식의 작법을 보고 기사를 쓰려고 한다.글을 쓰는 동력이니까 좋은 댓글을 달아주시면 감사하겠습니다.
언어는 Python을 사용합니다.
트위터 API의 신청과 같은 내용은 다른 글에서 쉽게 요약할 수 있으니 참고하시기 바랍니다.
OAuth 인증 객체 만들기
먼저 OAuth 인증 객체를 작성합니다.(나는 이곳의 작법이 아직 개선할 여지가 있다고 생각한다.)
config.py
CONFIG = {
"CONSUMER_KEY": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",
"CONSUMER_SECRET": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",
"ACCESS_TOKEN": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",
"ACCESS_SECRET": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx3",
}
define_client.py#! /usr/bin/python3
# -*- coding: utf-8 -*-
from config import CONFIG
from requests_oauthlib import OAuth1Session
# --------------------------------------------------------------------
def define_client_proc():
CONSUMER_KEY = CONFIG["CONSUMER_KEY"]
CONSUMER_SECRET = CONFIG["CONSUMER_SECRET"]
ACCESS_TOKEN = CONFIG["ACCESS_TOKEN"]
ACCESS_TOKEN_SECRET = CONFIG["ACCESS_SECRET"]
# OAuthの認証オブジェクトの作成
twitter = OAuth1Session(
CONSUMER_KEY,
CONSUMER_SECRET,
ACCESS_TOKEN,
ACCESS_TOKEN_SECRET)
return twitter
config.py로 인증키,define 설정client.py로 인증 대상을 만들고 있습니다.나중에 다른 파일로 define. -client_proc () 를 호출하고 인증 대상을 사용합니다.
xxxx.py
from define_client import define_client_proc
twitter = define_client_proc()
제가 생각하는 마지막 글씨.
여기서부터 마음에 드는 서류를 준비하세요.(이번에main.py에 쓰기)
우선 인증 대상을 호출한 다음 트위터 변수에 저장합니다.
main.py
#! /usr/bin/python3
# -*- coding: utf-8 -*-
from define_client import define_client_proc
# OAuthの認証オブジェクトの作成
twitter = define_client_proc()
다음에 사용할 URL을 준비합니다.URL은 Twitter API 문서에 나타나는 ResourceURL입니다.
이 URL은
Tweet을 검색할 때(Search API)
Tweet을 투고하려는 경우(Update API)
이렇게 용도에 따라 다르다.
트위터 API 문서에서 매번 가져오세요.
먼저 기고문 트위터의 API를 사용해 보자.
main.py
#! /usr/bin/python3
# -*- coding: utf-8 -*-
from define_client import define_client_proc
# OAuthの認証オブジェクトの作成
twitter = define_client_proc()
tweetUrl = 'https://api.twitter.com/1.1/statuses/update.json'
다음 트윗의 내용을 변수에 저장합니다.main.py
#! /usr/bin/python3
# -*- coding: utf-8 -*-
from define_client import define_client_proc
# OAuthの認証オブジェクトの作成
twitter = define_client_proc()
tweetUrl = 'https://api.twitter.com/1.1/statuses/update.json'
# --------------------------------------------------------------------
def tweet():
# ツイートする内容を記述
tweet_text = "Pythonを使ってTwitterAPIからツイートします。"
# params変数に格納する
params = {
"status": tweet_text,
}
params에 TwitterAPI 문서에 기록된 매개 변수를 입력합니다.이번에 사용한statuses/update의 페이지에는 다음과 같은 인자가 적혀 있습니다.
그 다음에는 OAuth의 인증 대상만 호출해서 포스터를 드릴게요.
main.py
#! /usr/bin/python3
# -*- coding: utf-8 -*-
from define_client import define_client_proc
# OAuthの認証オブジェクトの作成
twitter = define_client_proc()
tweetUrl = 'https://api.twitter.com/1.1/statuses/update.json'
# --------------------------------------------------------------------
def tweet():
# ツイートする内容を記述
tweet_text = "Pythonを使ってTwitterAPIからツイートします。"
# params変数に格納する
params = {
"status": tweet_text,
}
# OAuth認証オブジェクトを呼び出して、postする。
response = twitter.post(url=tweetUrl, data=params)
# エラーを検知出来るように
if response.status_code < 200 or response.status_code > 299:
print("ツイート失敗")
수행결과↓트위터에 올렸어요.
이러한 쓰기 방법의 장점은 모든 목적이 URL과params만 바꾸면 읽기 쉽고 유지하기 쉽다는 것이다.
이상은 소개하고 싶은 작법입니다.
어렵기 때문에 나는 많은 것을 시도했다.
시험해 보다
main.py
#! /usr/bin/python3
# -*- coding: utf-8 -*-
from define_client import define_client_proc
# OAuthの認証オブジェクトの作成
twitter = define_client_proc()
tweetUrl = 'https://api.twitter.com/1.1/statuses/update.json'
showUrl = 'https://api.twitter.com/1.1/statuses/show.json'
timelineUrl = "https://api.twitter.com/1.1/statuses/user_timeline.json"
# --------------------------------------------------------------------
# ツイートを投稿する。
def post_tweet():
# ツイートする内容を記述
tweet_text = "Pythonを使ってTwitterAPIからツイートします。"
# params変数に格納する
params = {
"status": tweet_text,
}
# OAuth認証オブジェクトを呼び出して、postする。
response = twitter.post(url=tweetUrl, data=params)
# エラーを検知出来るように
if response.status_code < 200 or response.status_code > 299:
print("ツイート失敗")
# リプライを投稿する
def post_reply():
# ツイートする内容を記述
reply_text = "Pythonを使ってTwitterAPIからツイートします。"
# params変数に格納する
params = {
"status": tweet_text,
# リプライしたいツイートのTweetIDを記入
"in_reply_to_status_id": tweet_id
}
# postする。
twitter.post(url=tweetUrl, data=params)
# ツイートの基本情報を取得
def get_tweet_info():
getInfoParams = {
"id": tweet_id
}
# paramsを指定してgetする
tweetInfo_response = twitter.get(url=showUrl, params=getInfoParams)
tweetInfo = tweetInfo_response.json()
print(tweetInfo)
# 自分のタイムラインを取得
def getTargetTimeline():
getTimelineParams = {
# だれのタイムラインを取得するか
"screen_name": screen_name,
# 何個集めるか
"count": 100
}
twitter.get(url=timelineUrl, params=getTimelineParams)
이런 느낌은 많은 것을 쓸 수 있다.이번엔 여기까지.
반응이 많으면 트위터 API로도 놀고 싶은데 꼭 댓글로 남겨주세요.
주식회사 DOKOSORE 제품 소개
어렵기 때문에 제품 소개
Yondle(연덕)이 스마트폰으로 책을 읽을 수 있는 전자책 리더(개발 중)
GOTSUGO(GOTSUGO)는 달력에서 유휴 시간을 자동으로 추출합니다.스케줄 조정할 때 쓰세요.
Reference
이 문제에 관하여(어쩔 수 없어, 내가 트위터 API의 기본 사용법을 가르쳐 줄게.), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://zenn.dev/iamtkg/articles/000a8e55cfe08f텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)