CookieClickerをPython Selenium自動的に進める試み①
何をしたか
・学生の頃ちょっとしたブームだったブラゲークッキークリッカーのクリックを自動化してみた。(seleniumを使ってみたかった)
※オレンジの枠線以外はゲーム画面の引用です。
枠線の部分を自動でクリックするようにした。
・バグがありありで、まだまだ拡張が足りないので「①」。気が向いたらもう少しまともにする(セーブ、ロードができない。動きっぱなし、アップデートしない等
中の人の現状
・Python⇒ほとんど触ったことない。
・Selenium⇒ほとんど触ったことない。
・Git⇒仕事で使ってるから大体わかる。
・JavaScript⇒ほとんど触ったことない。
参考リンク
・PythonからPythonファイルを読み込み使用する - Qiita
・PythonとSeleniumを使ったブラウザ自動操作 – 名古屋のWebシステム開発 iNet Solutions
参考リンクを見るとほとんど完成してしまう!
ソース
sample.py
from selenium import webdriver from selenium.webdriver.common.action_chains import ActionChains from selenium.webdriver.common.keys import Keys class Sample: # driverpath=各種Webドライバーexeのフルパス def __init__(self, driverpath): # ドライバーパスを指定 self.driver = webdriver.Chrome(driverpath) def exec(self): # URLに移動 self.driver.get("http://natto0wtr.web.fc2.com/CookieClicker/") while True : try : # cookieボタン見つけてクリックさせる element = self.driver.find_element_by_id("bigCookie") element.click() except Exception as e : print(e)
力わざにまみれてるので一部補填
# driverpath=各種Webドライバーexeのフルパス def __init__(self, driverpath): # ドライバーパスを指定 self.driver = webdriver.Chrome(driverpath)
コンストラクタ。ソース公開するのにドライブのディレクトリ見せるのが嫌だったからひとまずこれで。
※使用するときはパスを指定しないと動かない~..\selenium\drivers\chromedriver_win32\chromedriver.exe
# cookieボタン見つけてクリックさせる element = self.driver.find_element_by_id("bigCookie") element.click()
"bigCookie"はChromeのF12(開発者ツール)でソースをじっくり眺めてたぶんこれかなー。で掘り当てた
except Exception as e : print(e)
いろいろ拙いせいでボコボコエラーで落ちるので無理やりキャッチ。
所感
・わかってはいたけど、そこら中で同じようなことしている人の記事がボロボロでてきて意義がよくわからなくなったりした。・開発者ツールすごい。seleniumすごい。
・Cookieをクリックするゲームなのに自動化してどうするんだろう。
・実績:奇怪なクリック。をゲットできる。
GitHub
github.com