我试图在互联网上搜索这个主题,但无法得到任何正确的解决方案。我想通过我的Servlet打开一个页面并捕获从服务器收到的响应,以便我可以更改/检索从响应中获得的数据。我不是在讨论过滤从我自己的servlet发送的数据,而是从其他网站获取响应。
任何建议的阅读将不胜感激。
基本上,我试图通过FileIO提取页面上存在的所有href。但这可能是一个繁琐的过程,因为我必须事先下载页面。 另外,有没有其他方法可以做到这一点?请指教。
答案 0 :(得分:0)
您可以使用httpclient或其他http客户端模块
答案 1 :(得分:0)
您也可以尝试Selenium并使用其webdriver api ..
列出allLinks = driver.findElements(By.tagName(“a”));
或者只是
Pattern linkElementPattern = Pattern.compile(“]*href=\”[^>]*>(.*?)“);
List<String> links = new ArrayList<String>();
// html is your HTML source String..
while (linkElementPattern.matcher(html)) {
links.add(linkElementMatcher.group());
}