如何使用Python从URL读取CSV文件?

2024-10-06 12:11:57 发布

您现在位置:Python中文网/ 问答频道 /正文

当我卷曲到一个API调用链接http://example.com/passkey=wedsmdjsjmdd

curl 'http://example.com/passkey=wedsmdjsjmdd'

我以csv文件格式获取员工输出数据,如:

"Steve","421","0","421","2","","","","","","","","","421","0","421","2"

如何使用python解析。

我试过:

import csv 
cr = csv.reader(open('http://example.com/passkey=wedsmdjsjmdd',"rb"))
for row in cr:
    print row

但没用我犯了个错误

http://example.com/passkey=wedsmdjsjmdd No such file or directory:

谢谢!


Tags: csv数据comapihttp链接example员工
3条回答

您需要用urllib.urlopenurllib2.urlopen替换open

例如

import csv
import urllib2

url = 'http://winterolympicsmedals.com/medals.csv'
response = urllib2.urlopen(url)
cr = csv.reader(response)

for row in cr:
    print row

这将输出以下结果

Year,City,Sport,Discipline,NOC,Event,Event gender,Medal
1924,Chamonix,Skating,Figure skating,AUT,individual,M,Silver
1924,Chamonix,Skating,Figure skating,AUT,individual,W,Gold
...

您也可以使用“请求”模块完成此操作:

url = 'http://winterolympicsmedals.com/medals.csv'
r = requests.get(url)
text = r.iter_lines()
reader = csv.reader(text, delimiter=',')

使用pandas直接从url读取csv文件非常简单

import pandas as pd
data = pd.read_csv('https://example.com/passkey=wedsmdjsjmdd')

这将以表格格式读取您的数据,这将非常容易处理

相关问题 更多 >