Le Selenium avec P01:インストールと動作確認
pythonでSeleniumを使う。
【0】はじめに:注意事項と実行環境について
■■■ 注意事項 ■■■
できるだけインターネット上に公開されているサイトを対象に練習しないようにしよう。
プログラムを失敗して、知らないうちにサーバ負荷を与える(DoS攻撃になりうる)、回線の無駄遣いをする(大量データ伝送を発生させてしまう)、など様々な点で迷惑となることがある。
さらに、プログラムから目的のサイトにアクセスしても良いのか、そのページに記載されている内容をデータとして取得しても良いのか、などの規約は必ず確認すること。
無料で公開しているから問題ない、youtubeに転がっている動画や解説サイトで使っているサイトだから問題ない、ということではない。
知らなかったでは済まされない。法的に訴えられることもある。よくわからない場合は、必ずわかる人に相談しよう。
「仮に問題ない場合でも、そのプログラムでのアクセスが迷惑をかけることにならないかどうか」について、「空気を読もう」。
■■■ 環境について ■■■
上記をふまえ、ここでは練習環境として次のWebアプリをローカル環境にたてて使っている。(今回はdockerで構築)
・DVWA (Damn Vulnerable Web Application)
・OWASP Juice Shop
どちらもわざと脆弱性をもたせたwebアプリで、本来はWebアプリのセキュリティ脆弱性の実例を学ぶための学習用環境。
上記公式サイトや検索をして手元の環境からブラウザアクセスできるようにしよう。
【1】SeleniumとWeb driverのインストール
Seleniumの公式サイト。
インストール手順全体
本当はWebDriverにパスを通して~~、、ということになるが、面倒くさいので少し手抜きをする。pipでChromeDriverを入れてつかっていく。(ChromeDriverを使う→Seleniumで使用するブラウザはChromeを想定)
pip install selenium
pip install chromedriver-binary-auto
【2】動作確認
from selenium import webdriver
import chromedriver_binary # web driverをpipでいれたのでこの記述が必要
driver = webdriver.Chrome()
# 5秒ウェイト
driver.implicitly_wait(5)
driver.get('http://localhost:8080/login.php')
print(driver.title) # アクセスしたサイトのタイトルを出力
driver.quit()
実行結果:
ブラウザが少し起動して、タイトルの文字列が出力されてブラウザが閉じればOK。