2015-06-06 61 views
0
import lxml.html.clean as clean 
cleaner = clean.Cleaner(style=True, remove_tags=['div','span',], safe_attrs_only=['href',]) 
text = cleaner.clean_html('<a href="http://жк-сочи.рф/">link</a>') 
print text 

打印LXML乾淨休息href屬性

<a href="http://%C3%90%C2%B6%C3%90%C2%BA-%C3%91%C2%81%C3%90%C2%BE%C3%91%C2%87%C3%90%C2%B8.%C3%91%C2%80%C3%91%C2%84/">link</a> 

如何獲得:

<a href="http://жк-сочи.рф/">link</a> 

在正常編碼即HREF?

+0

try lxml.html.tostring(text,encoding =「ascii」) –

回答

1

clean是否正確 - 括號中的字符串應該正確編碼,並且看起來亂碼的東西是正確的編碼。

您可能不知道,但kyrillic域名不存在 - 有一個複雜的系統將這些映射到「允許」字符。