teratail header banner
teratail header banner
質問するログイン新規登録

回答編集履歴

1

ヘッドレスでないモードについて追記

2017/12/29 09:00

投稿

umyu
umyu

スコア5846

answer CHANGED
@@ -1,2 +1,35 @@
1
- 質問文から制約要件がよく読み取れませんでしたが、
1
+ 質問文のコードヘッドレスモードを使用していないすね。。失礼まし。。
2
+ chromeを開いて→メニューのその他のツール→拡張機能→拡張機能のパッケージ化で使用したい拡張機能をcrxファイル化すれば、selenium からでも使用できます。
3
+ 既定のchrome拡張インストールフォルダ
4
+ > C:\Users\ユーザー名\AppData\Local\Google\Chrome\User Data\Default\Extensions
5
+
6
+ 以下の読み取るためのソースコード
7
+ ```Python
8
+ # -*- coding: utf-8 -*-
9
+ from selenium import webdriver
10
+ from selenium.webdriver.chrome.options import Options
11
+
12
+
13
+ def main():
14
+ chrome_options = Options()
15
+ # ヘッドレスモードを使用したい時は以下の行のコメントを解除してくださいな。
16
+ # chrome_options.add_argument('headless')
17
+ extension_path = r'C:\application\1.0.8_0.crx'
18
+ chrome_options.add_extension(extension_path)
19
+ # ChromeのWebDriverオブジェクトを作成する。
20
+ driver = webdriver.Chrome(chrome_options=chrome_options)
21
+
22
+ driver.get("http://www.yahoo.co.jp")
23
+ searchbox = driver.find_element_by_id("srchtxt")
24
+ searchbox.send_keys("piyo")
25
+ searchbtn = driver.find_element_by_id("srchbtn")
26
+ searchbtn.click()
27
+ driver.save_screenshot('search_results.png')
28
+
29
+
30
+ if __name__ == '__main__':
31
+ main()
32
+ ```
33
+ ---
34
+ ヘッドレスモードの時は以下の回答になります。
2
35
  [Extensions support in headless Chrome](https://bugs.chromium.org/p/chromium/issues/detail?id=706008)に記載されていますがヘッドレスモードの場合、拡張機能がサポートされていません。