【问题标题】:Using Selenium to Scrape Java-Heavy Website - Returning None使用 Selenium 抓取 Java 重的网站 - 返回无
【发布时间】:2021-12-04 05:03:15
【问题描述】:

这里有新的编码器。一段时间以来,我一直在尝试使用 Selenium 在一个非常基于 Java 的网站上抓取一段文本。不知道这一点我做错了什么。

from selenium import webdriver

driver = webdriver.Chrome()
driver.get("https://explorer.helium.com/accounts/13pm9juR7WPjAf7EVWgq5EQAaRTppu2EE7ReuEL9jpkHQMJCjn9")

earnings = driver.find_elements_by_class_name('text-base text-gray-600 mb-1 tracking-tight w-full break-all')

print(earnings)

driver.quit()

尝试抓取的元素的图像:

我正在尝试从这个容器中提取该美元金额,以便最终可以在我正在构建的每日报告中使用它。

我尝试过的一切都导致它没有返回。即使我尝试从该元素中获取文本。

这里是网站链接:https://explorer.helium.com/accounts/13pm9juR7WPjAf7EVWgq5EQAaRTppu2EE7ReuEL9jpkHQMJCjn9

【问题讨论】:

  • 您可以尝试捕获任何其他数据,即页面标题吗?

标签: python java selenium web-scraping


【解决方案1】:

您应该等到 javascript 加载、页面加载、元素加载。

_ = driver.Manage().Timeouts().ImplicitWait;

您可以在元素出现之前创建条件。

 ExpectedConditions ......  define selenium conditions

 //This is how we specify the condition to wait on.
 wait.until(ExpectedConditions.alertIsPresent());

你可以使用 XPATH !美元 XPATH 是

 /html/body/div[1]/div/article/div[2]/div/div[2]/div/div[2]/div[1]/div[2]/div[2]

FIREFOX XPATH 查找器

https://addons.mozilla.org/en-US/firefox/addon/xpath_finder/

【讨论】:

    【解决方案2】:

    你可以使用这个 xpath

    //*[@id="app"]/article/div[2]/div/div[2]/div/div[2]/div[3]/div[1]/div[1]/div[3]
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2022-01-23
      • 2016-10-14
      • 2017-12-05
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-09-23
      • 2019-09-29
      相关资源
      最近更新 更多