2017-01-02 191 views
-2

我在一个项目上工作,我想从一个url下载一个csv文件。我在网站上做了一些研究,但没有任何解决方案为我工作。通过python下载csv文件(url)

的URL直接为您提供下载或打开打击的文件,我不知道怎么说蟒蛇来保存文件(这将是很好,如果我还可以将其重命名)

但是,当我用这段代码打开url没有任何反应。

import urllib 
url='https://data.toulouse-metropole.fr/api/records/1.0/download/?dataset=dechets-menagers-et-assimiles-collectes' 

testfile = urllib.request.urlopen(url) 

任何想法?

+1

调整的例子,你已经采取了看看这个问题:http://stackoverflow.com/questions/19602931 /基本的http文件下载和保存到磁盘在蟒蛇 – roach

+0

是的!答案是: testfile = urllib.URLopener() testfile.retrieve(“http://randomsite.com/file.gz”,“file.gz”) 但我得到错误: 'HTTPResponse'对象有没有属性'检索' – blabla

回答

0

试试这个。更改“文件夹”的文件夹,你的机器

import os 
import requests 

url='https://data.toulouse-metropole.fr/api/records/1.0/download/?dataset=dechets-menagers-et-assimiles-collectes' 
response = requests.get(url) 
with open(os.path.join("folder", "file"), 'wb') as f: 
    f.write(response.content) 
+0

它的工作!非常感谢 – blabla

0

。您可以从the docs

import urllib.request 
url='https://data.toulouse-metropole.fr/api/records/1.0/download/?dataset=dechets-menagers-et-assimiles-collectes' 

with urllib.request.urlopen(url) as testfile, open('dataset.csv', 'w') as f: 
    f.write(testfile.read().decode())