我想下载一个网页的本地副本,并获取所有的CSS,图像,JavaScript等.
在之前的讨论中(例如,这里和这里,两者都超过两年),通常提出两个建议:wget -p和httrack.但是,这些建议都失败了.我非常感谢使用这些工具中的任何一个来完成任务; 替代品也很可爱.
选项1: wget -p
wget -p成功下载所有网页的先决条件(css,images,js).但是,当我在Web浏览器中加载本地副本时,该页面无法加载先决条件,因为尚未从Web上的版本修改这些先决条件的路径.
例如:
<link rel="stylesheet href="/stylesheets/foo.css" />需要更正指向新的相对路径foo.cssbackground-image: url(/images/bar.png)同样需要进行调整.有没有办法修改,wget -p以便路径正确?
选项2:httrack
httrack对于镜像整个网站来说,它似乎是一个很棒的工具,但我不清楚如何使用它来创建单个页面的本地副本.httrack论坛中有很多关于这个主题的讨论(例如这里),但似乎没有人有防弹解决方案.
选项3:另一个工具?
有些人建议使用付费工具,但我无法相信那里没有免费的解决方案.
非常感谢!
我正试图在我的html5缓存清单中测试我的后备页面.我宁愿不必实际断开互联网连接.我听说它在Chrome中不能正常工作,所以我需要专门测试它.Chrome是否可以脱机工作?我搜索了设置和可用的扩展,我找不到任何东西.
我正在尝试使MDN的Javascript参考可用于离线浏览(个人使用).
我不是网站的所有者也不是开发人员,我只能访问其生成的输出.
我的第一个想法是appcache.manifest在页面中注入HTML5 ; 使用manifestR我已经生成了页面资产的列表.
然后我尝试使用file:///协议指向我的本地清单文件,使用http://协议,最后使用a base64 string,表示文件的内容(data:text/cache-manifest,).似乎没什么用.
谷歌搜索后,我偶然发现他们的公共FTP.还没有完全爬它尚未.但仍然没有找到js docs的任何提及.
我考虑过使用浏览器的"另存为"命令保存HTML页面; 但我宁愿开发基于javascript的爬虫,也不愿单独保存每一页.
我在哪里可以找到MDN Docs的离线版本?或者如何在离线时浏览MDN文档?
我一直在做很多工作,让一些网络应用程序在iOS上使用HTML5清单脱机工作.我遇到了其他人都遇到的典型问题并修复了它们,一切似乎都运行良好 - 除非我将iPhone应用程序保存到iPhone 4桌面上.
如果我执行此操作然后启用飞行模式,则在尝试通过主屏幕访问应用程序时会收到以下警告:"由于未连接到互联网,因此无法打开您的应用程序名称." 通过Safari浏览器访问应用程序在离线时工作正常.
如果有人知道这是我的错误,甚至是解决问题的可能性,请告诉我们.
即使下载新的金融时报网络应用程序(在广泛的localStorage支持下做得非常好)也会在从主屏幕离线访问时导致错误.
技术规格:使用iOS 4.3.3运行iPhone 4(但也见过4.3.2中的问题)
似乎一旦你有一个清单条目,一个la:
<html manifest="cache.manifest">
Run Code Online (Sandbox Code Playgroud)
然后,该页面(缓存中的主条目)将始终被缓存(至少通过Safari),直到用户执行删除缓存的操作,即使您稍后从html标记中删除清单属性并更新清单(通过更改)其中的内容),强制主条目与其他一切一起重新加载.
换句话说,如果你有:
- 从index.html中删除清单条目并修改清单(因此它被浏览器过期并重新加载所有内容)不会阻止此页面表现得好像它仍然完全缓存一样.如果您在index.html上查看源代码,您将不再看到列出的清单,但浏览器仍将仅请求cache.manifest文件,除非该文件的内容已更改,否则不会对任何文件进行任何其他更改.用户.
这似乎是一个非常明显的错误,它出现在iOS和Mac版本的Safari上.有没有人找到一种方法来重置页面并摆脱缓存而无需用户干预?
我希望能够在HTML5(iPad)网络应用程序中执行以下操作:
我对每一步都很满意,直到最后一步......
我正在尝试查找是否可以将脱机Web数据库与中央数据库同步的信息,但无法找到涵盖该主题的任何内容.是否有可能做到这一点?如果是这样,你能否提供关于它的信息的链接,或描述它如何工作足够详细,以实现我的特定应用程序?
提前致谢
我开始关注HTML5s允许离线Web应用程序的能力.
前段时间我发现使用CDN对我的应用程序运行良好,所以我一直坚持使用它们,主要是为了jQuery.
但是,清单文件似乎不允许缓存跨域资源.
此时我一直在使用相关Dive Into HTML5教程中描述的catch-all清单.我的jQuery类似于HTML5 Boilerplate中定义的内容.
我希望能够继续从CDN为在线用户提供jQuery服务,但可能还有一个本地副本用于离线访问.
是否值得尝试追求这条路线,或者我应该切换到只是从我的网站提供jQuery,以满足所有请求?
谢谢.
我正在构建一个离线Web应用程序,并希望使用缓存清单.目前我的缓存清单看起来像这样:
CACHE MANIFEST
# Change the version number below each time we update a resource.
# Rev 1
index.html
photo.html
js/photo.js
css/photo.css
http://code.jquery.com/jquery-1.6.1.min.js
http://code.jquery.com/mobile/1.0b1/jquery.mobile-1.0b1.min.js
http://code.jquery.com/mobile/1.0a4.1/jquery.mobile-1.0a4.1.min.css
http://maps.google.com/maps/api/js?sensor=false&region=GB
Run Code Online (Sandbox Code Playgroud)
有没有理由不在缓存清单中包含外部的,CDN托管的jQuery,jQuery Mobile和Google Maps文件?
我想不到一个,但我想我会问那些比我自己更聪明:)
利用HTML5能力指定文件是否/如何缓存(在manifest.cache文件中),是否可以指定整个目录?我可以在CACHE:部分下放置一个路径到我的images目录并让它应用于该目录中的所有文件,还是我需要显式指定要缓存的图像文件?
换句话说,这可能吗?
CACHE MANIFEST
...
CACHE:
images/
Run Code Online (Sandbox Code Playgroud)
......或者也许这个?
CACHE MANIFEST
...
CACHE:
images/*
Run Code Online (Sandbox Code Playgroud)
......或者我必须这样做:
CACHE MANIFEST
...
CACHE:
images/logo.png
images/image01.jpg
images/image02.jpg
images/image03.jpg
... (etc)
Run Code Online (Sandbox Code Playgroud) 我已经开始使用Vuetify添加ui组件并使用预定义的布局.问题是我不得不时不时地查看在线文档,并要求我永久地连接到互联网.
有没有办法让Vuetify离线文档?就像用doxygen/javadocs或CHM构建的html一样?PDF?胶乳?什么都有帮助.