繁体   English   中英

使用终端解压html源代码

[英]uncompress html source code using terminal

一些网站源代码被压缩并在一行中。 我想要的默认 HTML 结构。 我可以用终端吗? 我想用 wget 命令来做。 我使用在线工具 textFixer。 但我想用终端来做。

我想使用终端或使用脚本将一行文本转换为默认的 HTML 结构。

http://www.sawfirst.com/

是一行压缩源代码的示例。

我想要一行源代码到默认的 HTML 结构化。

如果您能够使用 php,您可以执行类似的操作

curl URL | php -r '$s = ""; while($l = fgets(STDIN)) {$s .= $l;} $x=new DOMDocument(); $x->loadHTML($s); $x->preserveWhiteSpace = false; $x->formatOutput = true; echo $x->saveHTML();'

saveHTML 似乎不会插入前导空格(为了改进缩进),但 saveXML 会插入,因此您可以使用 $x->saveXML() 代替。

这很可能会导致许多警告,因此您可能希望将其更改为:

curl URL | php -r 'error_reporting(E_ERROR); $s = ""; while($l = fgets(STDIN)) {$s .= $l;} $x=new DOMDocument(); $x->loadHTML($s); $x->preserveWhiteSpace = false; $x->formatOutput = true; echo $x->saveXML();'

当然,您可以在$PATH提供脚本以使其更简单

#!/usr/bin/env php
<?php

error_reporting(E_ERROR);

$input = call_user_func(function(){
    $lines = [];
    while ($line = fgets(STDIN)) {
        $lines[] = $line;
    }
    return implode("\n", $lines);
});

$domDocument = new DomDocument();
$domDocument->preserveWhiteSpace = false;
$domDocument->formatOutput = true;
$domDocument->loadHTML($input);

echo $domDocument->saveXML();

并将该文件例如保存到/usr/local/bin/phphtmltidy并使其可执行( sudo chmod +x /usr/local/bin/phphtmltidy

那么你可以简单地:

curl URL | phphtmltidy

当然,你也可以使用节点作为解释和工作,就像一个图书馆这样一个

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM