我在使用 Python 3.4 的 BeautifulSoup 4 使用的 xml
解析器时遇到了以下意外行为。解析 xml 样式表时,结束分隔符中的问号消失了:
输入:
BeautifulSoup('<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="myStyleSheet.xsl" type="text/xsl"?>','xml')
输出:
<?xml version="1.0" encoding="utf-8"?>
<?xml-stylesheet href="myStyleSheet.xsl" type="text/xsl">
请注意 type="text/xsl"?>
如何更改为 type="text/xsl">
。
此外,示例发现 here以同样的方式中断。
这是故意的吗?我应该报告错误吗?除了随后在正确的位置插入问号之外,还有什么方法可以防止这种情况吗?
最佳答案
摘自2016年7月19日发布的BeautifulSoup 4.5.0版本的变更日志:
“* 更正了 XML 处理指令的处理。[bug=1504393]”
关于XML 解析器删除处理指令结束定界符的问号,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38246620/