簡體   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