Python

Tweepyで特定ユーザーの過去ツイートをスクレイピングで自動収集する

この記事は約3分で読めます。

 

今回はPythonのTwitter APIをラッパーしたライブラリである「Tweepy」を用いて特定のTwitterアカウントの過去ツイートを一括で自動取得する方法について紹介したいと思います。

 

【実行環境】

  • Python3.7
  • Tweepy3.6
  • TwitterAPI_V1

 

関連記事:【Python】TweepyでTwitterAPI_V2のAPIを使ってツイートするサンプルプログラム

 

スポンサーリンク
スポンサーリンク

Tweepyで特定ユーザーの過去ツイートを取得する

 

#特定のユーザーのツイートをデータフレームで取得する#

import tweepy
from datetime import timedelta
import pandas as pd

CK = ''                             # Consumer Key
CS = ''     # Consumer Secret
AT = '' # Access Token
AS = ''         # Accesss Token Secert

#認証情報を設定
auth=tweepy.OAuthHandler(CK, CS)
auth.set_access_token(AT, AS)

#APIインスタンスの作成
api=tweepy.API(auth)

#アカウント指定
Account = ''

#ツイート保存用変数&取得するツイートを計算する
tweet_data = []
num = 0

for page in range(2):
    tweets = api.user_timeline(Account, count=200, page=page)
    for tweet in tweets:
        tweet.created_at += timedelta(hours=9)
        num += 1
        tweet_data.append(['@'+Account, tweet.created_at, tweet.text])

# ツイートデータをデータフレームに変換
tweet_data = pd.DataFrame(tweet_data, columns=["account", "date", "tweet"])
tweet_data.head()

 

range()は〇×200ツイート取得できます。無料版のAPIでは最大3500~4000ツイートが取得上限となっています。

 

 

関連記事:【Python】TwitterのDM送信をTweepyで自動化する

関連記事:【Python】Tweepyで検索に引っかかったツイートを自動でいいね!する

 

 

 

 


プログラミング・スクレイピングツール作成の相談を受け付けています!

クラウドワークス・ココナラ・MENTAなどでPython・SQL・GASなどのプログラミングに関する相談やツール作成などを承っております!

過去の案件事例:

  • Twitter・インスタグラムの自動化ツール作成
  • ウェブサイトのスクレイピングサポート
  • ダッシュボード・サイト作成
  • データエンジニア転職相談

これまでの案件例を見る

キャリア相談もお気軽に!文系学部卒からエンジニア・データサイエンティストへの転職経験をもとに、未経験者がどう進むべきかのアドバイスを提供します。


スポンサーリンク
/* プログラミング速報関連記事一覧表示 */
ミナピピンの研究室

コメント

  1. […] 関連記事:【Python】Tweepyで特定ユーザーの過去ツイートをスクレイピングで自動取得する […]

  2. アッキー より:

    わかりやすく丁寧なコードを記載いただきありがとうございます。

    コピペして使用したところ、user_timelineのところで以下のエラーが出てしまいました。

    どの様に改変したらよろしいでしょうか?
    ご教授いただけると幸いです。
    ーーーーーーーーーーーーーーーーーーーーーーーー

    44 kwargs[‘payload_list’] = payload_list
    45 kwargs[‘payload_type’] = payload_type
    —> 46 return method(*args, **kwargs)

    TypeError: user_timeline() takes 1 positional argument but 2 were given

    • コメントありがとうございます
      恐らくTweepyのバージョンに関連するエラーですので
      pip install tweepy — upgrade などでtweepyのライブラリのバージョンっをアップデートすれば解決するのではないかと思います
      参照:https://stackoverflow.com/questions/69687310/tweepy-user-timeline-takes-1-position-but-2-were-given-error

タイトルとURLをコピーしました