自動化プログラムのための準備
今回は、twitterを利用した自動化プログラムをご紹介します。
2017年7月までで、国内月間アクティブユーザ数が約4,000万人とたくさんの方が利用されています。
これからも伸びていくと予想される様々な人気SNSですが、このtwitterに関するプログラムを作成していこうと思います。
ここで、作成するプログラムにて、twitterのAPIを利用します。また、このAPIを利用するために必要な4つのキーが必要となるため、その取得する手順からご紹介します。
その手順についてまとめた記事がありますので、こちらを参考にして進めてください。(5分もかかりません)
参考URL –> 【Python】twitter APIを使用するための各種キーを取得する手順
必要なモジュール
それでは、APIに使用するキーを取得して頂いたことを前提として、必要なモジュールについて説明していきます。
今回利用するモジュールは、、、
・tweepy
上記で挙げたモジュールをインポートして利用していきます。
それでは、ファイルエディタウィンドウを開いて、任意の名前.pyのファイルを作成・保存してください。
フォロー自動化プログラム
import tweepy # 各種キーをセット CONSUMER_KEY = "xxxxxxxxxx" CONSUMER_SECRET = "xxxxxxxxxx" ACCESS_TOKEN = "xxxxxxxxxx" ACCESS_SECRET = "xxxxxxxxxx" auth = tweepy.OAuthHandler(CONSUMER_KEY, CONSUMER_SECRET) auth.set_access_token(ACCESS_TOKEN, ACCESS_SECRET) # APIインスタンスを作成 api = tweepy.API(auth)
まずはじめに、ライブラリであるtweepyをインポートします。
各種キーの値は、作成したtwitter開発者ページから取得したキーを代入します。
各種キーをセット後、OAuthHandlerクラスのインスタンスを作成します。
OAuthHandlerインスタンス(auth)に、”ACCESS_TOKEN”, “ACCESS_SECRET”をセットします。
セットが終わったあとは、OAuthHandlerインスタンスからtweepyのAPIインスタンス(api)を作成します。
# 検索ワードと検索数をセット s_k = "python" count = 5 # 検索実行 search_results = api.search(q=s_k, count=count) # 結果をフォロー for result in search_results: screen_id = result.user._json["screen_name"] print(screen_id) api.create_friendship(screen_id)
検索キーワードと検索数にそれぞれ変数を用意し、任意のワードと数値を入力します。
次に検索実行ですが、変数search_resultsに、api.searchによって取得した値を代入します。
最後に、forループで検索結果を順にcreate_friendshipでフォローする処理を行います。
★follow.py★
import tweepy # 各種キーをセット CONSUMER_KEY = "xxxxxxxxxx" CONSUMER_SECRET = "xxxxxxxxxx" ACCESS_TOKEN = "xxxxxxxxxx" ACCESS_SECRET = "xxxxxxxxxx" auth = tweepy.OAuthHandler(CONSUMER_KEY, CONSUMER_SECRET) auth.set_access_token(ACCESS_TOKEN, ACCESS_SECRET) # APIインスタンスを作成 api = tweepy.API(auth) # 検索ワードと検索数をセット s_k = "python" count = 5 # 検索実行 search_results = api.search(q=s_k, count=count) # 結果をフォロー for result in search_results: screen_id = result.user._json["screen_name"] print(screen_id) api.create_friendship(screen_id)
それでは!!
また、今後もプログラミングに取り組み続けていく中で、実務に利用できる学びを身につけていかなければなりません。
エンジニアの中でもいくつか学ぶ技術は変化しますが、ここではWebスクレイピング・テキストマイニング・機械学習等をご紹介しています。
エンジニアでなくても取り組みたい業務効率化・自動化に関する実務へのヒントとなったPython本をまとめた記事がありますので、そちらも合わせて参照して頂ければ幸いです。
機械学習や分析の分野に興味があり、pythonを学びたいと思っている方は是非こちらもどうぞ↓