我想从我的servlet中读取给定URL的源代码(HTML标记)。
例如,URL为http://www.google.com,我的servlet需要读取HTML源代码。我之所以需要这样做,是因为我的Web应用程序将读取其他网页并获取有用的内容并对其进行处理。
可以说,我的应用程序显示了一个城市中一个类别的商店清单。该列表是如何生成的,我的Web应用程序(Servlet)会通过给定的网页来显示各种商店并读取内容。通过源代码,我的servlet过滤了该源并获得有用的详细信息。最后创建列表(因为我的servlet无法访问给定URL的Web应用程序数据库)。
任何知道的解决方案吗?(特别是我需要在servlet中执行此操作)。如果您认为还有另一种从其他站点获取详细信息的最佳方法,请告诉我。
谢谢
您尝试做的事情称为网页抓取。皮划艇和类似的网站做到了。可以在网上搜索它;)在Java中可以做到这一点。
URL url = new URL(<your URL>); BufferedReader in = new BufferedReader(new InputStreamReader(url.openStream())); String inputLine; StringBuffer response = new StringBuffer(); while ((inputLine = in.readLine()) != null) { response.append(inputLine + "\n"); } in.close();
响应将为您提供该URL返回的完整HTML内容。