我正在使用PHP和libtidy来尝试筛选可能是历史上最糟糕和最不正确的HTML表格使用情况.该站点关闭了几个table,tr,td,font或bold标签,并且一致地嵌套了表中的许多不同的表层.
示例代码段:
<center>
<table border="1" bordercolor="#000000" cellspacing="0" cellpadding="0">
<tr>
<td width="50%">
<center>
Home Team - <b>Wildcats<td>
<center>
Away Team - <b>Polar Bears<tr>
<td colspan="2">
<center>
<b><font size="+1">Rosters<tr>
<td valign="top">
<center>
<table border="0" cellspacing="0">
<tr>
<td>
<font size="2">1 <td>
<font size="2">Baird, T<tr>
<td>
<font size="2">2 <td>
<font size="2">Knight, P<tr>
<td>
<font size="2">8 <td>
<font size="2">Miller, B<tr>
<td>
<font size="2">9 <td>
<font size="2">Huebsch, B<tr>
<td>
<font size="2">11 <td>
<font size="2">Buschmann, C<tr>
<td>
<font size="2">12 <td>
<font size="2">Reding, J<tr>
<td>
<font size="2">14 <td>
<font size="2">Simpson, S<tr>
<td>
<font size="2">27 <td>
<font …Run Code Online (Sandbox Code Playgroud) 我正在寻找一个像 Tidy 一样工作的纯 Python 库。请指教。谢谢你。
我想要HTMLTidy做的就是缩进我的HTML文档的标签,但它目前也会更改doctype,添加标签的xmlns属性html,更改<br />标签,并可能做一些其他的事情.
当我选择TextFX→TextFX HTML Tidy→TiDy Clean Document-nowrap时,如何使Notepad ++中的HTMLTidy仅执行缩进?
我正在尝试使用JTidy(jtidy-r938.jar)来清理输入HTML字符串,但我似乎无法正确获取默认设置.通常,诸如"你好世界"之类的字符串在整理后最终成为"helloworld".我想展示我在这里做的事情,任何指针都会非常感激:
假设这rawHtml是包含输入(真实世界)HTML的String.这就是我正在做的事情:
Tidy tidy = new Tidy();
tidy.setPrintBodyOnly(true);
ByteArrayOutputStream baos = new ByteArrayOutputStream();
PrintStream ps = new PrintStream(baos);
tidy.parse(new StringReader(rawHtml), ps);
return baos.toString("UTF8");
Run Code Online (Sandbox Code Playgroud)
首先,上述代码看起来有什么根本错误吗?我似乎得到了奇怪的结果.
例如,请考虑以下输入:
<p class="MsoNormal" style="text-autospace:none;"><font color="black"><span style="color:black;">???</span></font><b><font color="#7f0055"><span style="color:#7f0055;font-weight:bold;">private</span></font></b><font color="black"><span style="color:black;"> String parseDescription</span></font><font>
输出是:
<p class="MsoNormal" style="text-autospace:none;"><font color=
"black"><span style="color:black;"> </span></font>
<b><font color="#7F0055"><span style=
"color:#7f0055;font-weight:bold;">private</span></font></b><font
color="black"><span style="color:black;">String
parseDescription</span></font></p>
所以,
"public String parseDescription"变为"publicString parseDescription"
提前致谢!
您好,我有以下输入:
<p>Hi <span>you</span></p>
Run Code Online (Sandbox Code Playgroud)
我想将其视为 XML。
我使用以下选项在命令行上运行 Tidy:
input-xml: yes
output-xml: yes
indent: no
Run Code Online (Sandbox Code Playgroud)
我的输出是这样的:
<p>Hi
<span>you</span></p>
Run Code Online (Sandbox Code Playgroud)
不过我想整洁地不要漂亮地打印 xml。我希望它尊重所有空白,而不是添加换行符。我似乎找不到一种无需漂亮打印即可输出 XML 的方法。有人知道怎么做吗?
我正在尝试 html 整理我的文档
目前我正在得到这样的代码
<div class="ImageContainer">
<img width="740.953125" height="561" src="pages/channels_home.png" usemap="#map_channels_home" />
</div><map name="map_channels_home" id="map_channels_home">
</map>
Run Code Online (Sandbox Code Playgroud)
是否有配置值来打开它?我在这里看过:http : //tidy.sourceforge.net/docs/quickref.html 但不确定哪个配置值
我正在使用 HTML Tidy Online ( http://infohound.net/tidy/ ) 来整理一些非常旧且混乱的 HTML 文件,其中包含一些希伯来字符。每当 Tidy 处理页面时,即使在更改设置中的编码方法之后,输出也会将希伯来字符变成乱码。使用不同的设置,我确实设法获得与 Unicode 实体相同的希伯来字符输出。我用谷歌搜索了可能的解决方案,但没有找到。我心里有几个想法,但我不确定如何实现它们(如果有的话)(也许有人有更好的解决方案)。
- 我想也许我可以(在处理页面之后)扫描页面中的 unicode 实体,并将它们替换为相应的希伯来字符(当然,以系统的方式)。
- 也许我可以获取 HTML Tidy 源代码并修改它以适当地输出希伯来语字符。问题是我怀疑我是否有足够的知识来开始做这样的事情。
在使用jTidy(在Android上)时,我遇到了一个非常烦人的问题.我发现jTidy适用于我测试过的每个HTML文档,除了以下内容:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8" />
<!-- Always force latest IE rendering engine & Chrome Frame
Remove this if you use the .htaccess -->
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1" />
<title>templates</title>
<meta name="description" content="" />
<meta name="author" content="" />
<meta name="viewport" content="width=device-width; initial-scale=1.0" />
<!-- Replace favicon.ico & apple-touch-icon.png in the root of your domain and delete these references -->
<link rel="shortcut icon" href="/favicon.ico" />
<link rel="apple-touch-icon" href="/apple-touch-icon.png" />
</head>
<body>
<div>
<header>
<h1>Page Heading</h1>
</header>
<nav>
<p><a href="/">Home</a></p> …Run Code Online (Sandbox Code Playgroud) File.html
word<i><span> <span>ratti</span></span></i>
Run Code Online (Sandbox Code Playgroud)
命令
$ tidy File.html
Run Code Online (Sandbox Code Playgroud)
产量
word<i>ratti</i>
Run Code Online (Sandbox Code Playgroud)
期望的输出
word<i> ratti</i>
Run Code Online (Sandbox Code Playgroud)
空间在哪里?
日志
Run Code Online (Sandbox Code Playgroud)line 1 column 1 - Warning: missing <!DOCTYPE> declaration line 1 column 1 - Warning: plain text isn't allowed in <head> elements line 1 column 8 - Warning: <span> is probably intended as </span> line 1 column 5 - Warning: replacing unexpected span by </span> line 1 column 33 - Warning: discarding unexpected </span> line 1 column 40 - Warning: discarding unexpected </i> line 1 column …
我安装了TidyManaged NuGet软件包,并编写了一些基本代码将HTML文件转换为XHTML,但是当我运行它时,出现以下错误:
TidyManaged.dll中发生了'System.DllNotFoundException'类型的未处理异常
附加信息:无法加载DLL'libtidy.dll':找不到指定的模块。(来自HRESULT的异常:0x8007007E)
我试图添加对ti.Managed链接的GitHub页面的ibtidy.dll(x64和x86)的引用,但这给出了错误
无法添加libtidy.dll。请确保该文件可访问,并且是有效的程序集或COM组件。
我曾经使用过的所有其他NuGet软件包始终都可以正常工作,如何使此NuGet软件包正常工作才能使用TidyManaged?