我在Python 2.7中使用urllib.urlopen
,但我需要处理下载的HTML文档及其包含的换行符(在<pre>
元素内)。
urllib docs表示urlopen不会使用通用换行符。我怎么能这样做?
答案 0 :(得分:3)
除非您的磁盘上已有HTML文件,urlopen()
将正确处理您想要的HTML文件中的所有新行格式\n
,\r\n
和\r
)根据{{3}}来解析(也就是将它们转换为\n
):
“如果URL没有方案标识符,或者它有文件:作为方案标识符,则会打开一个本地文件(没有通用换行符)”
E.g。
>>> 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'
答案 1 :(得分:2)
处理pre
代码的内容时,请使用splitlines来规范化行结尾:
'\n'.join(contents.splitlines())