Pythonでclickniumを用いてChromeブラウザを自動で開きWeb サイトにアクセスします。
今回はclickniumというライブラリを用います。このライブラリはPythonの標準ライブラリではありませんので、事前にインストールする必要があります。
■Python
今回のPythonのバージョンは、「3.8.10」を使用しています。(Windows11)
■clickniumを用いてChromeブラウザを自動で開きWebサイトにアクセスする
では、早速clickniumを用いてChromeブラウザを自動で開きWebサイトにアクセスするスクリプトを書いていきます。
■コード
from clicknium import clicknium as cc, locator def main(): tab =cc.chrome.open("https://www.yahoo.co.jp/") if __name__=="__main__": main()
まずは、「from import」でclickniumを呼び出し、asでccとlocatorという名前にします。その後、def文を用いてmain()という関数を定義します。定義後、関数が呼び出された時の処理としてtabという変数を定義し、その中でcc.chrome.open()を用います。これでChromeブラウザを自動的に開くことができます。括弧内には引数,パラメータとしてWebサイトのURLを渡します。今回は「https://www.yahoo.co.jp/」と記述し、Yahoo!JAPANのWebサイトを開いてみます。
関数を定義後、「if __name__ == “__main__”:」を記述し、以下の処理を実行します。以下の処理とは、main()という先ほど定義した関数を呼び出す処理です。
■実行・検証
スクリプトを記述後、「click_auto_web.py」という名前で、Pythonが実行されている作業ディレクトリ(カレントディレクトリ)に保存し、コマンドプロンプトから実行してみます。
実行してみると、Windows11にインストールしてあるChromeブラウザが自動的に起動し、今回指定したWebサイトであるYahoo!JAPANにアクセスし、Webサイトを表示させることができました。
Traceback (most recent call last): File "click_auto_web.py", line 7, in main() File "click_auto_web.py", line 4, in main tab =cc.chrome.open("https://www.yahoo.co.jp/") File "C:\Users\user_\AppData\Roaming\Python\Python38\site-packages\clicknium\core\service\invokerservice.py", line 156, in wrapper raise exception; clicknium.common.models.exceptions.UnreachableBrowserExtensionError: The browser's extension is not running, please check if your browser is running and make sure you have installed and turned on the extension.
表示させることは確認できましたが、コマンドプロンプトを確認すると、上記のエラーが出力された。このエラーが出力された原因を調べてみると、GoogleChromeの拡張機能をインストールしなければいけないということで、今回は、Clicknium Python コマンドを使用して Chrome 拡張機能をインストールしてみます。
■コード
from clicknium import clicknium as cc cc.chrome.extension.install()
まずは上記のコードをテキストエディタ等で記述し、スクリプトとしてPythonが実行されている作業ディレクトリ(カレントディレクトリ)に保存し、コマンドプロンプトから実行してみます。
Start to install Chrome extension... Install Chrome extension finished. Make sure you have turned on this extension in Chrome browser. (Chrome 拡張機能のインストールを開始する... Chrome拡張機能のインストールが完了しました。Chromeブラウザでこの拡張機能がオンになっていることを確認してください。)
実行してみるとコマンドプロンプト上に上記のメッセージが出力されます。出力後、GoogleChromeが起動します。
起動後、上記のウインドウが表示されます。ウインドウ内に「The Chrome browser extension has been installed. Make sure you have turned on this extension in Chrome before using it.(Chromeブラウザの拡張機能がインストールされています。Chromeでこの拡張機能がオンになっていることを確認してからご利用ください。)」と表示されていますので、拡張機能がインストールされます。
インストール後、「The Chrome browser extension has been installed. Make sure you have turned on this extension in Chrome before using it.(Chromeブラウザの拡張機能がインストールされています。Chromeでこの拡張機能がオンになっていることを確認してからご利用ください。)」とウインドウ内に表示されますが、画像が変更され、「Complete」ボタンが表示されます。こちらのボタンをクリックすると、ウインドウが閉じ、インストールの作業が終了となります。
なお、上記のようにGoogleChrome上で「エラー」と表示されている場合は、「エラー」の文字をクリックすると、メニューが表示され「新しい拡張機能が追加されました(Clicknium Recorder)」という項目があるので、こちらをクリックします。クリックすると、「Clicknium Recorderが追加されました」と表示されます。このウインドウ内で「拡張機能を有効にする」ボタンをクリックします。クリックすると、「再読み込みしますか?」となりますので、「再読み込み」をクリックします。これで拡張機能の有効になります。有効後、再度「click_auto_web.py」のファイルを、コマンドプロンプトから実行してみます。
実行してみるとGoogleChromeが自動的に起動し、指定したWebサイトへアクセスされました。今後はブラウザに「「Clicknium Recorder」がこのブラウザのデバッグを開始しました」というポップアップが表示されました。
表示を確認したあとにコマンドプロンプトを確認すると、エラーは出力されず、正常にスクリプトが実行されていました。
コメント