Windows 10 + Python3 + selenium + chromedriver で headless chrome を試してみる

# 目的
Windows10 + Python3 + selenium + chromedriver で headless chrome を試してみる
[Windows10 + Python3 + Selenium4でChromeとEdgeをheadlessで起動してみる　はこちら](https://qiita.com/tabizou/items/1a7789d88ba853cd6081)
# モジュールのインストール
## seleniumのインストール
<pre>
pip3 install selenium
</pre>

## chromedriver-binaryのインストール
<pre>
pip3 install chromedriver-binary 
</pre>
を実行すると、最新版のモジュールがインストールされる
<pre>
Successfully installed chromedriver-binary-84.0.4147.30.0
</pre>
サンプルを実行すると以下のエラーメッセージが発生する(かもしれない)
<pre>
selenium.common.exceptions.SessionNotCreatedException: Message: 
session not created: This version of ChromeDriver only supports Chrome version 84
</pre>
エラーが発生した場合(インストール前に確認して実行するわなぁ・・・)
※apt search みたいな機能はないのかな？？ 
※pip3 search だと Search PyPI for packages なんですよね

### Chromeのバージョンを確認する
Chrome -> ヘルプ からバージョンをコピペ
今日の時点では バージョン: 83.0.4103.61（Official Build）（64 ビット）

### バージョンを指定してインストールする
<pre>
pip3 install chromedriver-binary==83.0.4103.61

ERROR: Could not find a version that satisfies the requirement chromedriver-binary==83.0.4103.61
 (from versions: 2.29.1, 2.31.1, 2.33.1, 2.34.0, 2.35.0, 2.35.1, 2.36.0, 2.37.0, 2.38.0, 
 2.39.0, 2.40.1, 2.41.0, 2.42.0, 2.43.0, 2.44.0, 2.45.0, 2.46.0, 70.0.3538.16.0, 70.0.3538.67.0, 
 70.0.3538.97.0, 71.0.3578.30.0, 71.0.3578.33.0, 71.0.3578.80.0, 71.0.3578.137.0, 72.0.3626.7.0,
 72.0.3626.69.0, 73.0.3683.20.0, 73.0.3683.68.0, 74.0.3729.6.0, 75.0.3770.8.0, 75.0.3770.90.0,
 75.0.3770.140.0, 76.0.3809.12.0, 76.0.3809.25.0,76.0.3809.68.0, 76.0.3809.126.0, 77.0.3865.10.0,
 77.0.3865.40.0, 78.0.3904.11.0, 78.0.3904.70.0, 78.0.3904.105.0, 79.0.3945.16.0,79.0.3945.36.0,
 80.0.3987.16.0, 80.0.3987.106.0, 81.0.4044.20.0, 81.0.4044.69.0, 81.0.4044.138.0, 83.0.4103.14.0,
 83.0.4103.39.0, 84.0.4147.30.0)
ERROR: No matching distribution found for chromedriver-binary==83.0.4103.61
</pre>
なので、Chromeのバージョンに近そうな 83.0.4103.39.0 を指定してインストールする
※先に[ChromeDriver - WebDriver for Chrome](http://chromedriver.chromium.org/downloads)で対象バージョンを確認(ですよね・・)

<pre>
pip3 install chromedriver-binary==83.0.4103.39.0
</pre>
もしくは[ChromeDriver - WebDriver for Chrome](http://chromedriver.chromium.org/downloads)より
ChromeDriver 83.0.4103.39 をDLして以下に上書きする(Pythonのインストール先に依存)
<pre>
C:\Dev\tool\Python\Python38\Lib\site-packages\chromedriver_binary\chromedriver.exe
</pre>
# サンプルコード

```python
# Windows Add env PYTHONIOENCODING = UTF-8 & restart vscode
from selenium import webdriver
from selenium.webdriver.chrome.options import Options
import chromedriver_binary

# ブラウザーを起動
options = Options()
# インストール先の変更？
# options.binary_location = 'C:\\Program Files (x86)\\Google\\Chrome\\Application\\chrome.exe'
options.binary_location = 'C:\\Program Files\\Google\\Chrome\\Application\\chrome.exe'
options.add_argument('--headless')
driver = webdriver.Chrome(options=options)

# Google検索画面にアクセス
driver.get('https://www.google.co.jp/')

# htmlを取得・表示
html = driver.page_source
print(html)

# ブラウザーを終了
driver.quit()
```
# 参考にしたサイトはこちら
[ChromeDriver - WebDriver for Chrome](http://chromedriver.chromium.org/downloads)
[【Python】SeleniumでHeadless Chromeを使おう](https://qiita.com/derodero24/items/9e9567790bde9e4b9d0c)
[[selenium]chromedriverのバージョンエラーが出たときの対処法](https://qiita.com/iHacat/items/9c5c186f0d146bc98784)
[chromedriver-binary(Python)をChromeのバージョンに合わせてインストールする＠Windows](https://qiita.com/dev100kg/items/98f45f421cd47bfc5c5e)
[よく使うpipコマンド](https://qiita.com/Masaaki_Inaba/items/fe4a246a7e6fcd9c4726)
[Windows 10 Pro x64 + Python3 で selenium + chromedriver を少し試してみる](https://qiita.com/tabizou/items/a604784237b3ab36860c)
[Selenium Python(ABC順)](https://www.seleniumqref.com/api/webdriver_abc_python.html)