python解析lxml中的特殊字符

python解析lxml中的特殊字符,python,xpath,scrapy,Python,Xpath,Scrapy,在我的xml中有这样一行 <url>http://www.modeluxproperties.com/?act=list_web&m=search&purpose=sale&project=&type=32&beds=&lop=&Submit.x=37&Submit.y=20</url> 我在那行中得到了这个错误: lxml.etree.XMLSyntaxError: EntityRef: expectin

在我的xml中有这样一行

<url>http://www.modeluxproperties.com/?act=list_web&m=search&purpose=sale&project=&type=32&beds=&lop=&Submit.x=37&Submit.y=20</url>
我在那行中得到了这个错误:

lxml.etree.XMLSyntaxError: EntityRef: expecting ';', line 5, column 56

它将URL中的符号解析为XML实体。我认为符号应该是URL编码的——试着用
替换所有
&

它将URL中的符号解析为XML实体。我认为符号应该是URL编码的——试着用“&;”替换所有的“&”@卡萨波:谢谢你,写一个答案,让你高兴地接受。我个人怀疑这是否足够。例如,您有
,。。。也需要翻译(到
)。大多数编程语言都有这样的库。可能也是python,尽管我不知道这些。@CommuSoft-URL周围的“”是完全有效的XML字符,它们不应该表示为XML实体。原因是XML解析器将把
解析为XML元素,而不是纯文本(使用XML实体就是这样做的)。但是,如果尖括号应该位于URL中,或者XML元素中的任何位置,那么是的,它们也需要编码为XML实体。使用URL编码或XML编码函数/库时,应注意编码符号和其他无效的XML实体。
lxml.etree.XMLSyntaxError: EntityRef: expecting ';', line 5, column 56