尝试保存整个网页,包括链接的样式表和javascript。我可以保存页面,但是在尝试调出保存的页面时,所有脚本和样式都会丢失。我需要能够保存这些链接的源以及html。
<link href="/thePage.css" rel="stylesheet" type="text/css">
<script language="Javascript" type="text/Javascript" src="/thePage.js"></script>
到目前为止我已经
了Document doc = Jsoup.connect("http://www.thePage.com").get();
logger.info(doc.html());
答案 0 :(得分:1)
这应该可以使用JSoup,但需要一些工作。获得Document后,您可以使用select()(JSoupo选择器)来检索匹配的元素。所以你可以做类似的事情:
Elements media = doc.select("script[src]");
Elements links = doc.select("link[href]");
然后,您可以遍历找到的元素并下载媒体。您可以执行以下操作来下载文件:
byte[] bytes = Jsoup.connect(linkUrl)
.header("Accept-Encoding", "gzip, deflate")
.userAgent("Mozilla/5.0 (Windows NT 6.1; WOW64; rv:23.0) Gecko/20100101 Firefox/23.0")
.referrer(URL_TO_PARSE)
.ignoreContentType(true)
.maxBodySize(0)
.timeout(600000)
.execute()
.bodyAsBytes();
确保您传递给Jsoup.connect()的URL正确。相对路径显然可以用于脚本/媒体位置。
然后,您需要将字节保存到文件位置,该目录层次结构与源HTML文件中的预期引用相匹配。这可能是相当多的工作。祝你好运。