Как напечатать содержимое csv из удаленного URL, используя python 3.x? - PullRequest
0 голосов
/ 05 мая 2018

Я хочу напечатать CSV-контент с удаленного URL, но я получаю это:

Ошибка трассировки (самый последний вызов последний) в () ----> 1 для строки в cr: 2 отпечатка (строка)

Ошибка: итератор должен возвращать строки, а не int (вы открывали файл в текстовом режиме?)

Мой код:

import csv
import urllib3

medals_url = "http://winterolympicsmedals.com/medals.csv"
http = urllib3.PoolManager()
r = http.request("GET", medals_url)
r.status
response = r.data
cr = csv.reader(response)
for row in cr:
    print(row)

Заранее спасибо.

Ответы [ 2 ]

0 голосов
/ 05 мая 2018

Это может помочь.

import urllib3

medals_url = "http://winterolympicsmedals.com/medals.csv"
http = urllib3.PoolManager()
r = http.request("GET", medals_url)
r.status

data = "".join(map(chr,r.data))
print(data)
data = data.split('\n')
for row in data:
    print(row) # or print(row.split(','))
0 голосов
/ 05 мая 2018

Это можно сделать напрямую с помощью Pandas, которая переведет ваши данные в полезный формат для обработки

import pandas as pd

df = pd.read_csv('http://winterolympicsmedals.com/medals.csv')
...