gpt4 book ai didi

tidy - 如何防止 HTML Tidy 对 IDN 进行编码?

转载 作者:行者123 更新时间:2023-12-02 03:52:27 30 4
gpt4 key购买 nike

我正在使用 HTML Tidy,并且使用类似的东西

<a href="http://www.äöü.com/">Link</a>

它使

<a href="http://www.%C3%A4%C3%B6%C3%BC.de/">Link</a>

我如何告诉 Tidy 保持链接的原样?

我的配置:

'output-xhtml' => true,
'numeric-entities' => true,
'hide-comments' => false,
'show-body-only' => true,
'doctype' => 'transitional',
'wrap' => 0,
'alt-text' => '',
'word-2000' => true,
'drop-proprietary-attributes' => true

我也试过禁用 fix-uri 并将 char-encoding 设置为 utf8,但无济于事。

之所以要这么做,是因为Firefox最近遇到了这种URL编码问题。尝试在最新版本的 Firefox 中访问 www.v%C3%A4terwiderstand.de(我无法从中创建实际链接,因为 stackoverflow 似乎也无法处理带有变音符号的域),您将看到“找不到服务器”错误。不过,只需在 URL 栏中按回车键即可正常打开网站。据我所知,这不会发生在其他浏览器中。

如有任何帮助,我们将不胜感激!

最佳答案

我不确定您的 ENV 是什么样子等等,但这可行; fix-uri=no|0 是我所需要的。我添加了 char-encoding 参数作为很好的衡量标准。 Perl 的 tidy 包装了 tidy 库,因此这对于转换参数后的大多数/任何 tidy 使用都是有效的。

#!/usr/bin/env perl
use strictures;
use utf8;
use open qw( :std :utf8 );
use HTML::Tidy;

print HTML::Tidy
->new({ "show-body-only" => 1,
"char-encoding" => "utf8",
"fix-uri" => 0, })
->clean(q{<a href="http://www.äöü.com/">Link</a>});

__END__
<a href="http://www.äöü.com/">Link</a>

关于tidy - 如何防止 HTML Tidy 对 IDN 进行编码?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13859933/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com