【问题标题】:How to get page source as it is in browser and not in view page using selenium如何在浏览器中而不是在使用 selenium 的视图页面中获取页面源
【发布时间】:2020-04-17 03:40:40
【问题描述】:

我知道driver.getPageSource() 将网页作为 Html 获取,但我遇到的问题是我正在测试的网站将数据放在括号中,例如 {{OriginDescription}},也许使用一些 js 框架来获取数据?无论如何,当我在浏览器中检查元素时,我可以查看数据,但在浏览器中查看页面源也只显示括号而不显示数据。那么,当我在浏览器中查看(检查)网页时,如何获得网页的原样?

下面是我正在测试的网站:

driver.get("https://www.united.com/ual/en/US/flight-search/book-a-flight/results/rev?f=Miami,+FL,+US+(MIA+-+All+Airports)&t=IAH&d=2020-05-02&r=2020-05-16&sc=7,7&px=1&taxng=1&newHP=True&idx=1");
String pageSource = driver.getPageSource();

我正在使用 java 和 chromedriver。

【问题讨论】:

    标签: java selenium selenium-webdriver web-scraping selenium-chromedriver


    【解决方案1】:

    尝试等待一个元素首先加载,你可以这样做:

    driver.get("url");
    
    WebDriverWait wait = new WebDriverWait(driver, TIME_IN_SECONDS);
    wait.until(ExpectedConditions.elementToBeClickable(By.className("element-class-name")));
    
    String page = driver.getPageSource();
    

    这将等待页面完成加载并检查元素是否可点击。或者,您可以等到元素可见:

    wait.until(ExpectedConditions.visibilityOfElementLocated(By.id("element-id")));
    

    【讨论】:

      猜你喜欢
      • 2014-04-23
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-04-04
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多