2011-11-22 28 views

回答

3

除非HTML文件已经是您的磁盘,urlopen()将处理换行的正确所有格式上(\n在要分析(即,将它们转换成\n)HTML文件\r\n\r),根据urllib docs

“如果URL没有方案标识符,或者如果它具有文件:作为其方案标识符,则打开本地文件(没有通用换行符)”

例如,

>>> from urllib import urlopen 
>>> urlopen("http://****.com/win_new_lines.htm").read() 
'line 1\nline 2\n\n\nline 3' 
>>> urlopen("http://****.com/unix_new_lines.htm").read() 
'line 1\nline 2\n\n\nline 3' 
+0

你是对的。在进一步诊断我的错误之后,我意识到这实际上不是问题。 – Joe

2

当你处理pre标签的内容,使用splitlines正常化行结束:

'\n'.join(contents.splitlines())