私はデータスクレイピングの新人です。何らかの理由で私の質問に誤りがある場合は事前にお詫び申し上げます。Python 3でSelenium Webdriverを使用してWebサイトの「ポップアップ」ボックスのデータを取得する方法
航空会社のページをスクラップしようとしています(link、飛行機のデータ(例:航空機のタイプ)を取得するために)私は飛行機(出発空港と到着空港/ data)、フライトプロポーザルの画面を表示
2番目の画面では、「直行便」というリンクがあります。これをクリックするコード行も含まれていますので、新しいポップアップウィンドウ
しかし、 "html = browser.page_source"(BeautifulSoupで解析)でダウンロードしようとすると、明らかにダウンロード中です。コンテンツのみ前のページの「直行便」をクリックする前に、ポップアップボックス(screenshotsを参照)から情報を選択します。
voosdiretos=browser.find_elements_by_class_name('plusBus')
voo=voosdiretos[0]
voo.click()
html = browser.page_source
soup = BeautifulSoup(html)
soup_string=str(soup)
print('soup_to_string')
解決策を探しました。それらは通常、window_handleの使用をお勧めしますが、私はここで動作させる方法はありません(このポップアップウィンドウは実際の新しいポップアップではないと思われますが、JavaScriptのポップアップウィンドウのようなものです)。
誰もこの情報をスクラップする方法に関する提案はありますか?
は、[EDIT]
バッタの提案に続いて、私は要素を取得しようとしました:
elem_=browser.find_elements_by_css_selector('.informacoesLightbox bgGrid borderIe8')
print(len(elem_))
print(type(elem_))
出力は0と(何も返されなかった)でした。
提案がありますか?
非常バッタありがとうございます。より多くの情報を入力して質問を編集しました。 –
上記のCSSが追加されました。 – Grasshopper