ツイッターの自動的なフォローをpythonとseleniumで!(RPA)

ツイッターの自動的なフォローをpythonとseleniumで!(RPA)


pythonとseleniumは基本的になんでもできます。(2回目)
最近だとツイッターのいいねをpythonとseleniumで自動化してみた!(RPA)とかですね
その前は、寿司打のタイピングを自動化したりしてます
これらのコードを見ればわかるのですが、比較的単純なコードの塊となっていると思います。
それもこれもみんなpythonのわかりやすさとseleniumの便利さのおかげですね
ちなみにですが、seleniumはもともとテスト用に作られたツールですので、今回のようにRPAとして使う人は中々いないでしょう笑

ところで、いいねの自動化に成功したら次は何をしたいですか?
当然フォローの自動化ですよね

コードはこちらから、

from TwitterDriver.TwitterDriver import TwitterDriver
from TwitterDriver.TwitterDriver import driver

from selenium.webdriver.common.by import By
import time


class AutoFollowDriver(TwitterDriver):

    def action(self, people_num):
        time.sleep(3)

        #follow_btn_elements = self.driver.find_elements_by_xpath("//div[@dir='auto']")
        for i in range(people_num):
            i += 2
            follow_btn_element = self.driver.find_element_by_xpath('
            //*[@id="react-root"]/div/div/div/main/div/
            div/div/div/div/div[2]/section/div/div/div
            /div[{}]/div/div/div/div[2]/div[1]
            /div[2]/div/div/span/span'.format(i))
            follow_btn_element.click()
            time.sleep(1)


if __name__ == "__main__":
    twitterDriver  = TwitterDriver(driver)
    twitterDriver.login()

    time.sleep(2)

    twitterDriver.driver.get("https://twitter.com/誰かさん/followers")

    autoFollowDriver = AutoFollowDriver(twitterDriver.driver)
    autoFollowDriver.action(10)

    _ = input()
    driver.close()

            
こちらのコードが本体となります。
使用する際はのコードをTwitterDriver.pyという名前で保存して
さらに「誰かさん」のところをフォローする人にしてください

pythonコードの説明

まずは以前用意したクラスTwitterDriverを使い、自分のアカウントにログインする
ここでサインインしておかないとフォローすることができません
その後に直接url(https://twitter.com/誰かさん/followers)でフォロワーのページに飛ぶ
ここの「誰かさん」のところはあなたが好きな人にしてください
そしてAutoFollowDriverに役割をバトンタッチ
このクラスはTwitterDriverを継承しており、自動でフォローする役割を担当します
actionメソッドで実行
この時の引数people_numは何人フォローするかを指定しています
あまり嬉しそうに

たくさんフォローしちゃうとあとで取り返しがつかなくなるかもしれない

のでとりあえず10人フォローすることにしましょうね笑

いいねボタンのseleniumでの押し方について!

ここでコード内で一際目立っているこの1行について解説します。

//*[@id="react-root"]/div/div/div/main/div/ div/div/div/div/div[2]/section/div/div/div /div[{}]/div/div/div/div[2]/div[1] /div[2]/div/div/span/span'

これは何かというと

xpath

と呼ばれるものです。
xpathとは「htmlの階層の中でタグ等がどこの部分に当たるのか」を明確にするためのパスです。 このパスを指定することによって、ホームページのボタンを特定し、押すことが出来ます

これはseleniumに限らず、スクレイピング全体で重要なことなのでぜひ覚えておいてくださいね


今回でしたら、「いいね」ボタンがhtml階層の中の特定したい部分になります。

どのようにしていいねボタンのxpathを特定するのか?

このxpathは見ればわかりますが、長くて複雑ですよね
ですのでこのxpathを簡単に取得する方法を教えます!
やり方
  1. ツイッターのいいね!ボタンを見れるページを開く
  2. いいね!ボタンをシフトを押しながら右クリック
  3. すると、「検証」が出てくるので、それを押す
  4. いいね!ボタンをシフトを押しながら右クリック
  5. すると、「検証」が出てくるので、それを押す

  6. そうすると、選択した部分がひかるはずです。
  7. 光った部分を右クリック
  8. コピー から xpath を選択
  9. ペーストする
ペーストするとxpathが出てきます!



~ 結果~


ちゃんと動いてますね

tags

selenium
twitter

popular page

プログラミング言語の学ぶ順番について(初心者から中級者へ)後編

Pythonで入門書が終わった後(中級者)に勧めたい技術3選

urllibとbeautifulSoupでtwitterのツイート数,フォロー数,フォロワー数,いいね数,を取得する

another page

seleniumでtwitterに自動的にログインしてみた(RPA,スクレイピング)

ツイッターのいいねをpythonとseleniumで自動化してみた!(RPA)

寿司打を自動化する(python, selenium)

CONTACT ME RIGHT NOW!

Lorem Ipsum is simply dummy text of the printing and typesetting industry. Lorem Ipsum has been the industry's standard dummy text ever since the 1500s.

5th Avenue, 987
38399, New York,
USA.

Tel. 9888-4394
Mail. hello@example.com
Skype. ExampleSkype

Your message has been sent. Thank you!

© Copyrights Studio. All Rights Reserved

Created with Studio template by TemplateMag
/* フッター/コピーライトのスタイル指定 */ footer { padding: 40px 16px; } footer .copyright small { color: #868686; font-size: 1.4rem; font-family: "Ubuntu Condensed", sans-serif; letter-spacing: .05em; }