0
私は、Webページからいくつかの会社名を解析するために、Pythonでスクリプトを書いて、セレンと組み合わせました。私が定義したセレクターは完璧です。しかし、ウェブページが開くとすぐに、厄介なad
がデータを隠してしまい、私はそこに到達することができません。どのように私はそれをキックアウトし、私が望むデータを解析することができます。私はいくつかのスイッチを試してみましたが、そのウェブページで利用できるiframes
がありましたが、どれも働いていませんでした。スクリプト内で使用していた既存のものが、Message: no such element: Unable to locate element
というエラーを投げます。ブラウザが開いたときに「広告」がポップアップする方法を教えてください。
これは私がこれまで試したものです:
from selenium import webdriver
driver = webdriver.Chrome()
driver.get("https://www.inc.com/inc5000/list/2017")
driver.switch_to_frame(driver.find_element_by_id("jw_player_iconic"))
for item in driver.find_elements_by_css_selector("#data-container .row"):
company = item.find_elements_by_css_selector(".company a")[0].text
print(company)
driver.quit()
ポップアップ広告が以下のようなもの(明るい1)である:あなたが広告を待つことを試みることができ
ありがとうございました。私はあなたのソリューションの1つのインスタンスに遭遇することはありません。それは常に魔法を行う。私はあなたから聞いてから長い時間です。しかし、そのiframeの場所はどこで分かりましたか?つまり、あなたはそれを見たに違いありません。なぜなら、あなたはその式を使ったからです。// span [。= 'SKIP'] '。私はそれを解決するのに数時間を駄目にしたが失敗した。再度、感謝します。 – SIM
「iframe」という広告は、XPathの// iframe [starts-with(@ id、 "google_ads_iframe")]で見つけることができます。私は単にデベロッパーコンソールでそれを見つけた。また、 "SKIP"ボタンがiframeの外にあるので、フレームに切り替える必要はありません – Andersson