如何使用Python通过链接显示从csv文件解析的数据

时间:2014-02-05 21:22:29

标签: python parsing url csv encode

我从链接中读取了一个csv文件:

当我在文本编辑器上打开它时,

csv文件格式如下所示。

name, id, age, city
,steve, 1, 34, NY
,Rob, 2, 29, NY
,Ashly, 3, 28, NY

#!/usr/bin/python

url = 'http://domainname.com/file.csv'
response = urllib2.urlopen(url).read()
output   = StringIO.StringIO(response)

cr       = csv.reader((line.replace('NUL','') for line in output), delimiter=",")

当我使用

迭代cr时
for row in cr:
    print row

我得到的输出与实际文件数据不同。

['\x1b']
['^']
['\xd3']
['\xd4']
['\xe7']
['\x88']
['\xf7']

1 个答案:

答案 0 :(得分:1)

我已经使用下面提到的链接中的csv文件尝试了您的代码,一切都运行得很好。所有行都正确打印,这意味着从URL正确接收了csv文件。

import urllib2
import StringIO
import csv


url = "http://www.andrewpatton.com/countrylist.csv"
response = urllib2.urlopen(url).read()
output   = StringIO.StringIO(response)

cr       = csv.reader((line.replace('NUL','') for line in output), delimiter=",")

for row in cr:
        print row