【问题标题】:java get web content for many webpagesjava获取许多网页的网页内容
【发布时间】:2016-10-18 18:45:39
【问题描述】:

所以以前我有一个程序可以访问很多网站并从我想要的那些网站中获取部分源代码。但是最近网站已经更新,现在可以动态加载我想要的信息,但我不再得到它。

我已经使用 Selenium 制作了我的程序的另一个版本,但它花了很长时间才实用,有没有另一种方法可以更快地获取内容?我注意到的一件事是 Internet Explorer 版本 11 仍然以以前的方式加载网站内容,我可以专门从那里获取源吗?

在此之前我得到它的方式是这样的:

public static void main(String[] args) throws IOException{


    String example = getSource("http://www.google.com");

    System.out.println(example);
}

public static String getSource(String urlToGoTo) throws IOException
{
    URL url = new URL(urlToGoTo);
    URLConnection connection = url.openConnection();
    BufferedReader in = new BufferedReader(new InputStreamReader(
            connection.getInputStream()));
    String inputLine;
    StringBuilder a = new StringBuilder();
    while ((inputLine = in.readLine()) != null)
        a.append(inputLine);
    in.close();

    return a.toString();
}

欢迎任何想法,我一直在努力寻找一种方法来让它工作很长时间,因为它听起来不应该太复杂。

【问题讨论】:

  • 在不知道网站是如何设置的情况下,很难给你具体的代码示例。您是否针对特定定位器,我们可以使用哪种定位器策略。

标签: java selenium dynamic webcontent


【解决方案1】:

您似乎正在尝试获取页面源。在硒中有一种方法。你可以用它来代替你的

getSource("http://www.google.com");

创建一个 WebDriver 实例并导航到您的 url 并获取页面源代码。

代码 sn-p:

WebDriver driver = new FirefoxDriver();
driver.get("your URL");
String pageSource = driver.getPageSource();

【讨论】:

  • 感谢您的快速回复,我会试试看!
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2010-12-23
  • 2010-11-06
  • 1970-01-01
  • 1970-01-01
  • 2017-10-22
  • 2016-11-19
相关资源
最近更新 更多