【问题标题】:Issue downloading a complete website for offline use with HTTrack使用 HTTrack 下载完整的网站以供离线使用时出现问题
【发布时间】:2015-01-10 11:13:18
【问题描述】:

我用 HTTrack 下载了 sonst.cc,但是离线查看时没有内容。每个选项卡都是空的。这是为什么呢?

有没有其他应用可以让我下载整个东西?

我在这里发疯了。

谢谢。

编辑:

当我打开用 HTTrack 下载的索引文件时,在 Safari 中,首页加载得很好,背景图像、菜单……一切都很完美!除非我单击任何菜单,否则选项卡会打开为空!完全没有内容!!!也就是说,它下载了整个站点……html、css、js、图像……当我查看代码时,一切似乎都很好。都在那里!

index.html

<html>
  <head>
    <title>SONST</title>
    <meta http-equiv="content-type"     content="text/html;charset=UTF-8" />
    <meta name="title"          content="SONST" />
    <meta name="doc-type"           content="Web Page" />
    <meta name="Content-Language"       content="en" />
    <meta name="author"         content="Brill Webdesign, Eindhoven" />
    <meta name="web_author"         content="Brill Webdesign, Eindhoven" />
    <meta name="production"         content="Brill Webdesign - http://www.brill-webdesign.nl" />
    <meta name="copyright"          content="2015, Brill Webdesign" />
    <meta name="keywords"           content="" />
    <meta name="description"        content="" />
    <meta name="classification"     content="Business and Economy" />
    <meta name="Rating"         content="General" />
    <meta name="revisit-after"      content="5 Days" />
    <meta name="doc-class"          content="Living Document" />
    <meta name="robots"         content="all" />
    <meta http-equiv="imagetoolbar"     content="no" />
    <link rel="Shortcut Icon"       href="favicon.html" type="image/x-icon" />
    <link rel="icon"            href="favicon.html" type="image/x-icon" />
    <link rel="stylesheet"          href="css/styles.css" type="text/css" charset="utf-8" />
    <link rel="stylesheet"          href="css/slideshow.css" type="text/css" media="screen" />

    <script type="text/javascript"      src="scripts/mootools-core-1.3.1-full-compat-yc.js"></script>
    <script type="text/javascript"      src="scripts/mootools-more-1.3.1.1.js"></script>
    <script type="text/javascript"      src="scripts/interface.js"></script>
    <script type="text/javascript"      src="scripts/slideshow.js"></script>
    <script type="text/javascript"      src="scripts/fitimage.js"></script>

    <script type="text/javascript">
        window.addEvent('domready', function()
        {
            new FitImage('files/impressionen/SONST-Wald.jpg');
        });
    </script>

</head>
<body>

    <div id="show"></div>

    <div id="menu">
                    <a href="page5cf1.html?page=aktuelles&amp;l=">Aktuelles</a> /
        <a href="pagee4c7.html?page=angebot&amp;l=">Angebot</a> /
        <a href="page6e95.html?page=projekte&amp;l=">Realisierte Projekte</a> /
        <a href="page0c6a.html?page=referenzen&amp;l=">Referenzen</a> /
        <a href="pagee1df.html?page=kontakt&amp;l=">Kontakt</a> /
        <a href="paged192.html?page=impressum&amp;l=">Impressum</a>
                </div>

    <div id="wrapper">

        <div id="block_01" class="block">
            <div class="remove">
                <a href="#" onclick="slidepic();slide04();slide03();slide02();slide01();resetDelay();">&times;</a>
            </div>
            <div id="block_01_inner"></div>
        </div>

        <div id="block_02" class="block">
            <div class="remove">
                <a href="#" onclick="slidepic();slide04();slide03();slide02();resetDelay();">&times;</a>
            </div>
            <div id="block_02_inner"></div>
        </div>

        <div id="block_03" class="block">
            <div class="remove">
                <a href="#" onclick="slidepic();slide04();slide03();resetDelay();">&times;</a>
            </div>
            <div id="block_03_inner"></div>
        </div>

        <div id="block_04" class="block">
            <div class="remove">
                <a href="#" onclick="slidepic();slide04();resetDelay();">&times;</a>
            </div>
            <div id="block_04_inner"></div>
        </div>

        <div id="block_pic" class="block" rel="off">
            <div class="remove" style="height: 0;">
                <a href="#" onclick="slidepic();resetDelay();" id="close_pic">&times;</a>
            </div>
            <div id="block_pic_slideshow" rel="0" onclick="javascript:next_pic(); return false;"></div>
        </div>

    </div>

    <div class="introLogo">
        <img src="images/logo.png" alt="sonst" width="920" height="291" border="0" />
    </div>
    <div class="lang">
        <a href="index124c.html?l=e">E</a> / <a href="index1d70.html?l=d">D</a>
    </div>
</body>

【问题讨论】:

  • 打开你下载的文件,看看里面有什么?在此处发布索引页面,以便我们了解可能存在的问题。
  • 我有,一切似乎都很好。
  • 我们真的需要更多细节,不仅仅是你说没有内容,但一切都“还好”。在此处发布带有关联 css/js 的示例 html 文件。在浏览器中查看源代码以验证您正在查看正确的文件。检查 JS 控制台错误。检查以确保样式表或 js 脚本没有丢失。
  • 我在 Safari 中打开了用 HTTrack 下载的索引文件,首页加载的背景图像和菜单都很好,菜单......一切都很完美!除非我单击任何菜单,否则选项卡会打开为空!完全没有内容!!!也就是说,它下载了整个站点……html、css、js、图像……当我查看代码时,一切似乎都很好。这一切都在那里!把整个东西放在这里有点困难......你不觉得吗?
  • 我没有要求全部内容,只是索引页面。但这更好,谢谢。选项卡是在 JS 中完成的,所以我建议检查 JS 控制台是否有错误。另外,请考虑编辑您的问题,以使您尝试的内容更清楚,尤其是因为您最初说有 no content,这意味着一个空白页。

标签: download httrack


【解决方案1】:

一些服务器从浏览器请求标头。要模仿这种确切的行为,请按照以下步骤操作:

  1. 在浏览器上按 F12 并查找“网络”或“网络”选项卡
  2. 打开要下载的网页
  3. 展开列表中的第一项,应该是 GET 请求
  4. 检查显示“标题”的位置。如果您在 Firefox 中使用 Firebug,也可以点击“查看源代码”
  5. 复制所有位于“Host:”行的标题,方法是用鼠标绘制它们并按 CONTROL+C
  6. 转到 HTTrack 并单击当前下载的“设置选项”按钮(在 url 下)。
  7. 转到“浏览器 ID”选项卡,将“浏览器标识”留空,HTML 页脚“(无)”,然后在“其他 HTTP 标头”上粘贴您在第 5 步中复制的内容
  8. 一切就绪。

【讨论】:

    【解决方案2】:

    我做了一个wget -p -k http://sonst.cc 并得到了 index.html 及其所有相关的 css 和 js 文件。

    没有拉出背景图片,但除此之外,页面看起来还不错。

    我检查了选项卡,确实它们不起作用。仔细检查发现他们在点击时从外部 php 文件加载内容:

    由于PHP文件是服务器端处理的,自然wgethttrack拿不到代码,所以无法加载相关内容。当它试图从服务器拉取它时,我得到一个Access Control cross-origin error

    如果您真的想要页面的工作版本,鉴于标签数量相对较少,您可以手动复制 php 脚本中的响应并编辑 index.html 中的 js 以从本地副本加载标签而是回复。

    【讨论】:

    • 知道了!是的,你会很棒,但不幸的是,我不认为我可以自己做到这一点。您能否将其中的 1 个选项卡引导至幻灯片,以便我可以看到它是如何完成的?或者只是让我知道如何做(从我的本地副本加载选项卡)一步一步......我对PHP一无所知。非常感谢。
    • 这不是 PHP 知识。只需将您在实时网页(使用开发控制台)上获得的 html 响应复制并粘贴到 index.html 文件中,然后更改 JS 以加载这些响应,而不是尝试调用 home。
    • 这和你用 wget 得到的东西是一样的。我玩过它,但老实说我不知道​​我在做什么!我不了解 js(重要的那个),也不了解我必须做什么......
    • 不应该this 自动修复它吗?我试过但没有用。 :(
    【解决方案3】:

    用于 gui 版本。在网址(URL)中设置所有必要的下载链接:

    https://ok.mysite.com/src/js.js
    https://ok.mysite.com/src/css.css
    https://ok.mysite.com/src/
    https://ok.mysite.com/folder/iwrHelp
    https://ok.mysite.com/folder/mlnHelp
    https://ok.mysite.com/folder/mlnRatings
    https://ok.mysite.com/folder/iwrVariants
    https://ok.mysite.com/folder/millionaire
    https://ok.mysite.com/folder/
    https://ok.mysite.com/favicon.ico
    https://ok.mysite.com/
    https://ok.mysite.com/src/erc
    https://ok.mysite.com/src/jquery.js
    https://ok.mysite.com/src/ico.ico
    https://ok.mysite.com/src/bg.jpg
    https://ok.mysite.com/src/fonts/font.eot
    https://ok.mysite.com/src/fonts/font.otf
    https://ok.mysite.com/src/fonts/
    https://ok.mysite.com/src/fonts/font.ttf
    https://ok.mysite.com/src/fonts/font.woff
    https://ok.mysite.com/src/folder/gif.gif
    https://ok.mysite.com/src/folder/jpg.jpg
    

    如果这是您的站点,则可以使用操作系统命令 (cmd) dir /ogen /a /p /s /b *.* 或类似的 bash 轻松获取链接路径。并替换记事本中的所有内容,例如:c:\site to https://ok.mysite.com

    检查所有上传文件的大小,如果大小为0,则需要手动上传文件或重新上传并再次检查所有文件的大小为0,查看httrack错误日志。

    【讨论】:

      猜你喜欢
      • 2011-05-15
      • 1970-01-01
      • 2019-07-15
      • 1970-01-01
      • 1970-01-01
      • 2019-06-13
      • 2020-02-04
      • 2021-07-09
      • 2013-03-02
      相关资源
      最近更新 更多