質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
Python 3.x

Python 3はPythonプログラミング言語の最新バージョンであり、2008年12月3日にリリースされました。

Q&A

1回答

1900閲覧

PythonでGoogle Chromeの設定ボタンをクリックするには

y20190719

総合スコア12

Python 3.x

Python 3はPythonプログラミング言語の最新バージョンであり、2008年12月3日にリリースされました。

0グッド

0クリップ

投稿2019/08/07 05:59

編集2019/08/08 01:28

Pythonで、
Google Chromeで表示しているサイトのボタンなどを操作する方法は分かりますが、
Google Chromeの設定メニューの操作の仕方がよくわかりません。
例えば、下記の操作をするコードはどのように記述すればよいのでしょうか。

Google Chromeの
01) 右上の縦に・が3つ並んだボタン(Google Chromeの設定)をクリックする。
02) 印刷(P)...をクリックする。
03) 印刷設定画面が表示されるまで待つ。
04)「送信先」に「PDFに保存」を選択する。
05)「用紙サイズ」がない時は「詳細設定」をクリックする。
06)「倍率」を「カスタム」にして「50」を入力する。
07)「ヘッダーとフッター」のチェックを外す。
08)「保存」ボタンをクリックする。
09)「名前を付けて保存」ダイアログが表示されるまで待つ。
10)「名前を付けて保存」ダイアログの「保存」ボタンをクリックする。

Python

1from selenium import webdriver 2import time 3options=webdriver.ChromeOptions() 4driver=webdriver.Chrome(options=options,executable_path='C:\lesson\Python\chromedriver_win32\chromedriver.exe') 5driver.maximize_window() 6driver.get('https://www.google.co.jp') 7time.sleep(1) 8search_box=driver.find_element_by_name("q") 9search_box.send_keys("teratail PythonでGoogle Chromeの設定ボタンをクリックするには") 10search_box.submit() 11time.sleep(1) 12 13#element = driver.find_element_by_class_name("LC20lb") 14#element = driver.find_element_by_link_text("PythonでGoogle Chromeの設定ボタンをクリックするには") 15element = driver.find_element_by_partial_link_text("PythonでGoogle Chromeの設定ボタンをクリックするには") 16element.click() 17time.sleep(1) 18 19# Google Chromeの 20# 01) 右上の縦に・が3つ並んだボタン(Google Chromeの設定)をクリックする。 21# 02) 印刷(P)...をクリックする。 22# 03) 印刷設定画面が表示されるまで待つ。 23# 04)「送信先」に「PDFに保存」を選択する。 24# 05)「用紙サイズ」がない時は「詳細設定」をクリックする。 25# 06)「倍率」を「カスタム」にして「50」を入力する。 26# 07)「ヘッダーとフッター」のチェックを外す。 27# 08)「保存」ボタンをクリックする。 28# 09)「名前を付けて保存」ダイアログが表示されるまで待つ。 29# 10)「名前を付けて保存」ダイアログの「保存」ボタンをクリックする。 30 31driver.quit() 32

よろしくお願いします。(Windows10,Python 3.7.3)

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

python

1from selenium import webdriver 2 3import pyautogui as pgui 4import win32gui 5 6import time,sys 7options=webdriver.ChromeOptions() 8driver=webdriver.Chrome(options=options,executable_path='C:\lesson\Python\chromedriver_win32\chromedriver.exe') 9driver.maximize_window() 10driver.get('https://www.google.co.jp') 11time.sleep(1) 12search_box=driver.find_element_by_name("q") 13search_box.send_keys("teratail PythonでGoogle Chromeの設定ボタンをクリックするには") 14search_box.submit() 15time.sleep(1) 16 17#element = driver.find_element_by_class_name("LC20lb") 18#element = driver.find_element_by_link_text("PythonでGoogle Chromeの設定ボタンをクリックするには") 19element = driver.find_element_by_partial_link_text("PythonでGoogle Chromeの設定ボタンをクリックするには") 20element.click() 21time.sleep(1) 22 23# Google Chromeの 24# 01) 右上の縦に・が3つ並んだボタン(Google Chromeの設定)をクリックする。 25pgui.hotkey('alt','f') 26time.sleep(1) 27 28# 02) 印刷(P)...をクリックする。 29pgui.hotkey('shift','p') 30time.sleep(1) 31 32# 03) 印刷設定画面が表示されるまで待つ。 33while len(driver.window_handles) == 1: 34 time.sleep (.25) 35time.sleep (3) 36 37# 取得できるのに? 38#handles = driver.window_handles 39#driver.switch_to.window(handles[1]) 40#time.sleep (1) 41#sys.stdout.buffer.write(driver.page_source.encode('utf-8')) 42 43# 04)「送信先」に「PDFに保存」を選択する。 44for lp in range(5): 45 pgui.press('tab') 46 time.sleep(.25) 47pgui.press('down') 48 49# 05)「用紙サイズ」がない時は「詳細設定」をクリックする。 50for lp in range(4): 51 pgui.press('tab') 52 time.sleep(.25) 53pgui.press('enter') 54 55# 06)「倍率」を「カスタム」にして「50」を入力する。 56for lp in range(4): 57 pgui.press('tab') 58 time.sleep(.25) 59pgui.press('enter') 60pgui.press('down') 61pgui.press('enter') 62time.sleep(1) 63pgui.typewrite('50') 64 65# 07)「ヘッダーとフッター」のチェックを外す。 66for lp in range(1): 67 pgui.press('tab') 68 time.sleep(.25) 69pgui.press('enter') 70 71# 08)「保存」ボタンをクリックする。 72for lp in range(2): 73 pgui.press('tab') 74 time.sleep(.25) 75pgui.press('enter') 76 77# 09)「名前を付けて保存」ダイアログが表示されるまで待つ。 78handle = win32gui.FindWindow(None, "名前を付けて保存") 79while handle == 0: 80 time.sleep(.25) 81 handle = win32gui.FindWindow(None, "名前を付けて保存") 82win32gui.SetForegroundWindow(handle) 83time.sleep(1) 84 85# 10)「名前を付けて保存」ダイアログの「保存」ボタンをクリックする。 86for lp in range(3): 87 pgui.press('tab') 88 time.sleep(.25) 89time.sleep(1) 90pgui.press('enter') 91time.sleep (5) 92 93 94driver.quit()

投稿2019/12/01 15:57

Reach

総合スコア733

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問