【Selenium】implicitly_wait
行いたいこと Pythonのコードで、固定の秒数ではなく 「implicitly_wait」を使用して 要素が見つかるまでの待機時間を設定したいと思います。 今回はYoutubeを表示した際に、「野球」タブが表示されるま…
行いたいこと Pythonのコードで、固定の秒数ではなく 「implicitly_wait」を使用して 要素が見つかるまでの待機時間を設定したいと思います。 今回はYoutubeを表示した際に、「野球」タブが表示されるま…
行いたいこと 今回は稀に使用する「get_attribute」についてのメモです。 get_attributeを使用すると、属性の属性値を取得することが可能です。 下記で言うと属性を指定して、属性値を取得する。 属性:a…
行いたいこと 今回はHTMLでのXpath指定をPythonで指定するメモを残したいと思います。 例えばHTMLで「//h1[@class=”_3cl937Zpn1ce8mDKd5kp7u”]」 …
行いたいこと Yahooのサイトで、いくつかのパターンで要素を取得してみたいと思います。 ブラウザはChromeで、検証ツールから要素の確認を行います。 ・Chromeを起動 > 右クリック > 検証 > Ctrl + …
Seleniumコピペ用 起動~操作時によく使用する処理をメモ用に残します。 ・ヘッドレスモードでの起動や、ウィンドウサイズの指定。 ・xpathやclassなどでクリックする処理など のメモ書きになります。 サイトはテ…
実行時にエラー 今回は「NameError: name ‘wait’ is not defined」 というエラーが発生しました。 「wait」が存在しないのに使用している。という感じですね! エ…
PythonからGmail送信時にエラー 今回のエラーはGmail送信時に起こりました。 SMTPの認証エラー となっていますね。 どうやらこれまで「ログインID」と「パスワード」 のみで操作出来ていた内容が、それだけだ…
行いたいこと 前回Googleの検索結果を別タブで開いていきました。 今回は別タブで開いた画面内で上から下までのスクリーンショット を取得したいと思います。 ↓実行結果イメージ コード [crayon-67ac45c10…
行いたいこと Googleの検索結果を別タブで開いてみたいと思います。 実行結果は以下のイメージ。 コード
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 |
from bs4 import BeautifulSoup import time from selenium import webdriver driver = webdriver.Chrome("chromedriver_win32/chromedriver.exe") # 上位から何件までのサイトを抽出するか指定する pages_num = 3 # キーワード key_word = 'webスクレイピング' # Google検索で「webスクレイピング」の結果を格納する url = 'https://www.google.com/search?num={}&q={}'.format(pages_num,key_word) # URLを開く driver.get(url) time.sleep(3) # WebサイトのHTMLデータをBeautifulSoupで解析する soup = BeautifulSoup(driver.page_source,'html.parser') # 検索結果のまとまり page_titles = soup.find_all(class_="tF2Cxc") i = 1 # 1件別でURLを取得する for page_title in page_titles: url = page_title.find("a").get("href").replace('/url?q=','') print("url = " , url) # タブを右隣に新規追加 driver.execute_script("window.open()") # 操作対象のタブを追加したタブに設定 driver.switch_to.window(driver.window_handles[i]) # 検索結果から取得したURLへ遷移させる driver.get(url) # タブを右に追加していきたいので数字をプラスする i = i + 1 time.sleep(2) # 開き終わったら一番左のタブへ操作対象を戻す driver.switch_to.window(driver.window_handles[0]) |
解説 タブで開く前に、開く先のURLを取得して…
行いたいこと 前回画面のスクロールを行いました。 今回はSeleniumでChromeを起動 > 画面を下へスクロールして、 表示されているブラウザのスクリーンショット(範囲指定) を行いたいと思います。 ■ Googl…