728x90
2024.09.03 - [데이터&AI/데이터분석] - Twitter(x)의 데이터를 분석해보기 - 1 (feat. python)
지난 포스팅에이어!!!
이제는 유명인의 글을 긁어오기위하여!!
코드를 돌려보았습니다!!
그런데,, 계쏙 에러가!!...
그래서 알고보니!!!!
데이터 수집은,, 100$ 결재하는 Basic부터 가능했습니다!.
그렇게 되면 15분간 15개 요청이 가느한 수준입니다!!
그래서,, 결재를 하고 왔습니다!!
이제다시 코드를 넣고 본격적으로 시작해보겠습니다!!!
1. 일론머스크의 트윗 가져오기!!
- a. 일론머스크의 계정 id번호 찾기
import requests
import os
import json
def bearer_oauth(r):
"""
Bearer Token 으로 oauth 권한 받음!! r을 리턴해서 이후 header에 넣는다!!
"""
r.headers["Authorization"] = f"Bearer {bearer_token}"
r.headers["User-Agent"] = "v2UserLookupPython"
return r
bearer_token = mykeys.Bearer_Token
## 여기에 사용자 아이디입력!! : elonmush
usernames = "usernames=elonmusk"
user_fields = "user.fields=description,created_at"
user_info_url = "https://api.twitter.com/2/users/by?{}&{}".format(usernames, user_fields)
response = requests.request("GET", user_info_url, auth=bearer_oauth,)
print(response.status_code)
json_response = response.json()
json_response
나의 bearer Token 정보를 바탕으로 일롤버스크 ID를 넣고 (elonmusk) 결과를 보면!!
이렇게 일런모스크의 아이디 번호를 찾아올수 있습니다!!
- b. 일론머스크의 계정 id번호로 트윗 찾아오기!!
이제 해당 id 번호로 아래와 같이 조회를하면!!
user_id = json_response['data'][0]['id']
user_tweets_url = "https://api.twitter.com/2/users/{}/tweets".format(user_id)
target_params = {
"tweet.fields": "created_at",
"max_results": 100 # 갯수 설정 가능!! chleo 100개 까지
}
response = requests.request("GET", user_tweets_url, auth=bearer_oauth, params=target_params)
url = create_url()
params = get_params()
json_response = response.json()
json_response
짠!! 잘가져옵니다!!^^
- c. 익숙한 pandas DF로 만들기! 찾아오기!!
판다스로 만들어버리죠!
df = pd.DataFrame(json_response['data'])
짠!! 이쁘게 나와버립니다!!^^*
+ 그리고!! 이어서 더 가져오고싶다면
meta의 next token 정보를 활용하면 됩니다~~
# 다음 페이지의 트윗 요청
target_params = {
"tweet.fields": "created_at",
"max_results": 10, # 다음 10개의 트윗을 요청
"pagination_token": json_response['meta']['next_token'] # next token 기반으로 그 전꺼가져오기!
}
response = requests.request("GET", user_tweets_url, auth=bearer_oauth, params=target_params)
json_response = response.json()
json_response
ㅁ 참고 : https://github.com/xdevplatform/Twitter-API-v2-sample-code/tree/main
728x90
'데이터&AI > 데이터분석' 카테고리의 다른 글
reddit의 wallstreets로 보는 2024 미국대선!! (3) | 2024.11.06 |
---|---|
Reddit 데이터 수집하기 using API (PYTHON) (2) | 2024.09.12 |
Twitter(x)의 데이터를 분석해보기 - 1 (feat. python) (1) | 2024.09.03 |
duckDB를 사용해보기 (feat. 가볍다, 근대 성능은 좋아!!? ) (0) | 2024.08.30 |
데이터 분석가를 위한 쉬운 docker : 편리한 notebook 환경 만들기!! (1) | 2024.06.06 |
댓글