Tableau에서 사용하는 Twitter API 데이터를 Python으로 성형
얻다
Twitter API에 로그인하려면 →https://developer.twitter.com/ja
API를 사용하여 사용자의 타임라인 가져오기
다음 코드를 사용하여 구현합니다.
같은 계층에 있다.py를 만들고 환경 변수를 설명하고 두 번째 스크립트에서 가져옵니다.이렇게 되면 config.피.기티그노어에서 구매하면 API 키 등이 기티허브에 업로드되는 것을 막을 수 있다.
config.py
# これらは、Twitter APIを操作する上で必要。Developerダッシュボードで作成できます。
CONSUMER_KEY=""
CONSUMER_SECRET=""
ACCESS_TOKEN=""
ACCESS_TOKEN_SECRET=""
run.pyimport json
import config
import csv
from requests_oauthlib import OAuth1Session
def my_timeline():
url = "https://api.twitter.com/1.1/statuses/user_timeline.json"
params ={'screen_name': 'hirasawa','count' : 200}# JoeBiden
header = ['id','User Name','User ID','Follows','Followers','User Location','content','time']
req = twitter.get(url, params = params)
if req.status_code == 200:
with open('my_timeline.csv', 'w') as f:
writer = csv.writer(f)
writer.writerow(header)
timeline = json.loads(req.text)
for tweet in timeline:
tmp = []
tmp.append(tweet['id'])
tmp.append(tweet['user']['name'])
tmp.append(tweet['user']['screen_name'])
tmp.append(tweet['user']['friends_count'])
tmp.append(tweet['user']['followers_count'])
tmp.append(tweet['user']['location'])
tmp.append(tweet['text'])
tmp.append(tweet['created_at'])
writer.writerow(tmp)
else:
print("ERROR: %d" % req.status_code)
if __name__ == '__main__':
CK = config.CONSUMER_KEY
CS = config.CONSUMER_SECRET
AT = config.ACCESS_TOKEN
ATS = config.ACCESS_TOKEN_SECRET
twitter = OAuth1Session(CK, CS, AT, ATS)
my_timeline()
Tableau 시험록
Twitter API에서 반환된 날짜 형식은 다음과 같습니다.
EEE MMM dd HH:mm:ss X yyyy
그런데 이게 Tableau 처리 중에 막혔어요.하면, 만약, 만약...
문자열이 되어 도표를 정렬할 때 곤란합니다.
Tableau 기능으로 날짜로 바꾸고 싶어요.
그리하여 비었다
Tableau의 계산 필드에 형식을 지정해도 간단합니다
Tableau의 계산 필드에서DATEPARSE를 사용해도 식별할 수 없습니다.
DATEPARSE('EEE MMM dd HH:mm:ss X yyyy',Content['Created_at'])
격식의 상세한 내용을 보니 틀린 것이 없는 것 같다파이톤을 통해 해결
tmp.appeend의 줄을 다음과 같은 내용으로 바꾸기
3
date = datetime.strptime(tweet['created_at'],'%a %b %d %H:%M:%S %z %Y')
tmp.append(f"{date.year}-{date.month}-{date.day} {date.hour}:{date.minute}:{date.second}")
Pythhon의 데이터 시간 해석 기호는 아래 내용을 참고하십시오이렇게 되면 NULL이 아닌 날짜로 인식되기 때문에 문자열을 유지할 수 없는 연도→분기→월→일→시→분→초도 된다.
Reference
이 문제에 관하여(Tableau에서 사용하는 Twitter API 데이터를 Python으로 성형), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://zenn.dev/yassh_i/articles/20eda6e4c08478텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)