我使用tostring将标记为“p”的xml元素转换为字符串。你知道吗
result=lxml.html.tostring(child, method="text", encoding='utf8') #child is the given element
在浏览器上,它正确地呈现为一行:http://jsbin.com/AnoYePA/1/edit
我从这个操作得到的结果字符串由几行组成,每行一个单词。你知道吗
所以问题是,“result”字符串是否应该是一行的,就像它在互联网浏览器中呈现的一样?你知道吗
我应用此操作的元素附加在粘贴箱中。你知道吗
不,不应该
节点的文本中有新行。您要求lxml提取节点的文本,其中包括空格。你知道吗
web浏览器将任何一行空白呈现为单个空格,因此这些换行符在输出中不可见。但这是HTML呈现方式的一个特性,而不是文本。lxml没有再现这种呈现的事实并不比文本没有与浏览器中相同的字体、粗体等更“错误”。你知道吗
如果您想复制HTML的空白压缩,您可以很容易地做到这一点,例如
re.sub('\s', ' ', s)
。你知道吗相关问题 更多 >
编程相关推荐