【问题标题】:Save part of a web page as html将网页的一部分保存为 html
【发布时间】:2021-09-25 04:07:47
【问题描述】:

我想知道是否可以在完成渲染后仅将网页的一部分保存为 HTML。

假设我有一个网页,在这个网页上有一个平铺视图。此平铺视图是带有 ID 的 UL 列表。

完成加载后,我只想将此 UL 列表保存为 HTML 文件,以便下次加载页面时,在定义的情况下,我加载/输出此 HTML 文件而不必执行“平铺”功能。

我已经找到了这个,一般如何将页面保存为 HTML https://stackoverflow.com/a/3775302/11813184 但不幸的是,我是否也可以只保存某个区域,例如具有定义 ID 的 UL 列表。

【问题讨论】:

  • 你可以通过 DOM 操作来捕获整个页面(我建议使用PHP Simple HTML DOM Parser,如果可以的话,它会让你的生活变得非常简单)只保留你想要的部分,然后加载它。

标签: php wordpress


【解决方案1】:

我已经成功使用了ob_startob_get_contents,正如这里所描述的那样。 Save current page as HTML to server

【讨论】:

    【解决方案2】:

    尝试使用 SimpleHTMLDom 库来满足您的需求 - https://simplehtmldom.sourceforge.io/manual.htm

    这类似于 jQuery,但用于 PHP。

    $html = file_get_html('http://www.google.com/');
    
    // Find all anchors, returns a array of element objects
    $ret = $html->find('ul');
    
    // Find (N)th anchor, returns element object or null if not found (zero based)
    $ret = $html->find('a', 0);
    
    // Find lastest anchor, returns element object or null if not found (zero based)
    $ret = $html->find('a', -1);
    
    // Find all <div> with the id attribute
    $ret = $html->find('div[id]');
    
    // Find all <div> which attribute id=foo
    $ret = $html->find('div[id=foo]');
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-10-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多