見出し画像

【Python】いいね 自動化【Instagram】

「インスタグラムの自動化ツール」の
実現に向けて作っていきたいと思います!

前回「ログイン 自動化」を行いました。
今回は”いいね”を実行する部分を作ります!
ハッシュタグを検索して”いいね”したり
フィードの投稿に”いいね”したり
色々な場面で使うことのできる
重要な部分です!

”いいね”までの流れ

1.”いいね”のボタンを探す
2.”いいね”されているか確認
3.”いいね”されていなければ”いいね”する

といった流れでコードを組んでいきたいと思います。
2の処理が重要となります。
この処理がないとすでに”いいね”済みのものまで
”いいね”することになってしまします。
つまり、”いいね”を解除する動きになります。

1.”いいね”のボタンを探す
今回もXPathを使用して”いいね”ボタンを指定します。
前回と同じようにChromeの検証機能を使って
XPathを取得してみると

.../button/svg

といったものが取得されます。
このXPathを使用して取得したいところですが
svgのためこのままじゃエラーが出てしまします。
今回は

like_path = "XPathのbuttonまで/*[name()='svg']"

といった具合でパスを指定します。

2.”いいね”されているか確認
aria-label
”いいね”していない投稿:いいね!
”いいね”した投稿:いいね!を取り消す
と変わることを使用して判定します。

like_button = driver.find_element_by_xpath(like_path)
like_state = like_button.get_attribute('aria-label')

これでlike_stateに”いいね!”か”いいね!を取り消す”が入ります。

3.”いいね”されていなければ”いいね”する
like_stateを使って判定し、”いいね”を行います。

if like_state == "いいね!":
    like_button.find_element_by_xpath(like_path).click()


以上で”いいね”してない投稿に
”いいね”ができたと思います。
次回は
ハッシュタグで検索して”いいね”
を自動化しようと思います。

この記事が気に入ったらサポートをしてみませんか?