みなさん、こんにちは。
今回はブラウザを操作できるSeleniumを使用して荷物のお問い合わせプログラムを作成する方法を紹介しようと思います。
Seleniumとは
SeleniumはChromeやFirefoxなどのインターネットブラウザを操作する PYTHON のライブラリの一つです。
Seleniumを使用する為には、PYTHONのSeleniumのライブラリが必要だけではなく、ブラウザを操作するためのドライバーも必要になってきます。
今回はFirefoxを使ってプログラムを作成したいと思います。
プログラム作成前の準備
- 最初にPYTHONのライブラリ Selenium をインストールしましょう。
pip install selenium
2. 次にFireFoxのドライバーをインストールします。
まずはPYTHONのSeleniumのページに行きます。⇒ Seleniumのページ
ページを下にスクロースるとDrivers のセクションがあるので、その中のFireFoxのリンクをクリックします(他のブラウザのドライバをインストールする時は、そのブラウザのリンクをクリックして下さい)。
Githubのページに移動します。ページを下にスクロールして、Assetsのセクションの中の自分のパソコンのOSに対応するリンクをクリックします。矢印のところはWindows 64bitを選択しています。
ダウンロードしたzipファイルを解凍すると、実行ファイルが出てきますので、ダブルクリックしてドライバーをインストールをして完了です。
プログラムの内容
今回は、Firefoxのブラウザを使って、クロネコヤマトの荷物のお問い合わせを作成します。
プログラムコードの説明
from selenium import webdriver
browser = webdriver.Firefox()
browser.get('https://toi.kuronekoyamato.co.jp/cgi-bin/tneko')
number01 = browser.find_element_by_name("number01")
inputnumber01 = input(">> ")
number01.send_keys(inputnumber01)
exe_btn = browser.find_element_by_name("category")
exe_btn.click()
1行目 ライブラリのインポート
from selenium import webdriver
Seleniumからブラウザ操作するwebdriverをインポートします。
4,5行目 ブラウザを立ち上げる
browser = webdriver.Firefox()
browser.get('https://toi.kuronekoyamato.co.jp/cgi-bin/tneko')
Firefoxが立ち上がります。
URLはクロネコヤマトのお問い合わせのURLになります。
8~10行目 データを変換、データを格納
number01 = browser.find_element_by_name("number01")
inputnumber01 = input(">> ")
number01.send_keys(inputnumber01)
browser.find_element_by_nameはHTMLタグのnameからnumber01を探す関数になります。
荷物お問い合わせの1件目の入力欄は下記のようにnameがnumber01になっています。入力欄を探すのにnumber01を見つけろという訳です。
<input type="text" name="number01" maxlength="14" placeholder="1件目の送り状番号" value="" />
次にinputという関数を入れています。この関数が実行されれば、コマンドラインに >> が表示され、お問い合わせ番号を入力します。
そして、number01.send_keysで入力欄にお問い合わせ番号が実際に書き込まれます。
13,14行目 お問い合わせ開始をクリック
exe_btn = browser.find_element_by_name("category")
exe_btn.click()
お問い合わせ開始のnameタグが category になります。
クリックさせるために、exe_btn.click()を実施します。
そうすると、立ち上がったブラウザに荷物の状況が表示されます。
まとめ
いかがだったでしょうか。
プログラムでブラウザを操作するというのも面白いですよね。
今回はSeleniumの基本的な使い方でしたが、もっといろいろなことが出来ます。
Chromeでやってみるとどうなるかなど、是非、試してみていただければと思います。
「役に立った!」と思れましたら、下のSNSボタンで記事のシェアをしていただけると嬉しいです!
コメント