PythonのSeleniumでHTMLソースコードを取得・確認する方法
Selenium WebDriverでHTMLソースコードにアクセスする
Selenium WebDriverを使用すると、開いているWebページのHTMLソースコードに簡単にアクセスできます。最も基本的な方法は、page_sourceメソッドを呼び出し、その戻り値をコンソールに出力することです。
構文
src = driver.page_source
また、SeleniumではJavaScriptのコマンドを実行してHTMLソースコードを取得することも可能です。execute_scriptメソッドを使用し、引数としてreturn document.body.innerHTMLというコマンドを渡します。
構文
h = driver.execute_script("return document.body.innerHTML;")実装例①:page_sourceメソッドを使う場合
from selenium import webdriver
driver = webdriver.Chrome(executable_path="C:\\chromedriver.exe")
driver.implicitly_wait(0.5)
driver.get("https://www.tutorialspoint.com/index.htm")
# page_sourceメソッドでHTMLソースコードを取得
s = driver.page_source
print(s)実装例②:JavaScript Executorを使う場合
from selenium import webdriver
driver = webdriver.Chrome(executable_path="C:\\chromedriver.exe")
driver.implicitly_wait(0.5)
driver.get("https://www.tutorialspoint.com/index.htm")
# JavaScriptコマンドでHTMLソースコードを取得
h = driver.execute_script("return document.body.innerHTML")
print(h)page_sourceとinnerHTMLの違い
page_sourceは、ドライバーが認識しているページ全体のソース(<html>タグから始まる完全なHTML)を返します。一方、document.body.innerHTMLは<body>要素内のHTMLのみを返します。JavaScriptによって動的に書き換えられた後のDOMを取得したい場合にも、どちらの方法も有効です。
注意点:Selenium 4でのexecutable_path
Selenium 4以降では、webdriver.Chrome()のexecutable_path引数は廃止されています。代わりにServiceオブジェクトを使用してください。
from selenium import webdriver from selenium.webdriver.chrome.service import Service service = Service(executable_path="C:\\chromedriver.exe") driver = webdriver.Chrome(service=service)
-
PythonコードでGoogle検索を自動化する方法|googlesearchモジュールの使い方
はじめに この記事では、Pythonのコードを使ってGoogle検索を実行する方法を解説します。Pythonプロジェクトの開発中にWeb上のデータへアクセスしたり、Googleの検索結果をプログラム内で利用したりしたい場合に、この手法がとても便利です。 前提条件 システムにPythonがインストールされていること 「google」モジュールがインストールされていること(pipで以下のように導入できます) C:\Users\rajesh>python -m pip install google Collecting google Downloading https://files.p
-
PythonでのCX_Freezeの使い方:スクリプトを実行ファイル(EXE)に変換する方法
はじめに 何か面白いものを作りたいという欲求は人間の本能であり、完成したものは誰かに共有したくなるものです。Pythonでもその願いを叶えられます。ただし、作成したPythonスクリプトをそのまま共有するには、相手のマシンにも同じバージョンのPythonと、プログラムで使用しているすべてのモジュールがインストールされている必要があります。 そこで役立つのがCX_Freezeです。このツールを使えば、Pythonがインストールされていない環境でも動作するスタンドアロンの実行ファイル(.exe)を作成できます。 CX_Freezeのインストール まず、コマンドプロンプトで以下のコマンドを実行し、c