当我用我的Firefox下载网上的文件时,
http://quotes.money.163.com/service/lrb_000559.html
它在我的EXCEL看起来很好。
当我用我的python代码下载文件时,
from urllib.request import urlopen
url="http://quotes.money.163.com/service/lrb_000559.html"
html=urlopen(url)
outfile=open("g:\\000559.csv","w")
outfile.write(html.read().decode("gbk"))
outfile.close()
它看起来很难,当我用我的EXCEL打开它时,有一行填充了适当的内容,一行填充了空白,你可以在你的电脑上试试。
为什么不同的下载方式会导致不同的显示?
答案 0 :(得分:1)
我的猜测是在python中解码和写入结果时会改变行结尾。请尝试使用二进制文件。在我的头脑中,我认为它会是这样的:
outfile=open("g:\\000559.csv","wb")
outfile.write(html.read())
答案 1 :(得分:0)
在打开的文件中添加“b”标志,即更改此内容:
outfile=open("g:\\000559.csv","w")
对此:
outfile=open("g:\\000559.csv","wb")
解释here。原始文件有\r\n
,Python正在将\n
转换为\r\n
,这意味着您在每行(\r\r\n
)的末尾都有一个额外的回车符。< / p>