例如,我想使用文件名保存.pdf文件@ http://arxiv.org/pdf/1506.07825:' Data Assimilation- A Mathematical Introduction'在位置' D:// arXiv'。
但我有很多这样的文件。所以,我的输入是.csv文件的形式,行由(分号是分隔符)给出:
url; file name; location.
我在这里找到了一些代码:https://github.com/ravisvi/IDM
但这对我来说有点高级解析。我想从更简单的事情开始。以上似乎比我现在需要的功能更多 - 线程,暂停等。
那么请你写一个非常小的代码来完成上述工作:
我想我可以将其概括为处理.csv文件。
或者,提示我一个开始的地方。 (github存储库已经有了一个解决方案,它太完美了!我想要一些更简单的东西。)我的猜测是,使用Python,上面的任务应该是可能的,不超过10行代码。所以告诉我代码的重要组成部分,也许我可以搞清楚。
谢谢!
答案 0 :(得分:0)
我会使用requests
模块,你可以pip install requests
。
然后,代码很简单:
import requests
response = requests.get(url)
if response.ok:
file = open(file_path, "wb+") # write, binary, allow creation
file.write(response.content)
file.close()
else:
print("Failed to get the file")
答案 1 :(得分:0)
使用Python 3.6.5
这里是可以创建文件夹并将文件保存在文件夹中的方法。 dataURL-完整的URL路径 data_path-文件需要保存的位置。 tgz_path-带有扩展名的数据文件的名称。
def fetch_data_from_tar(data_url,data_path,tgz_path):
if not os.path.isdir(data_path):
os.mkdir(data_path)
print ("Data Folder Created @ Path", data_path)
else:
print("Folder path already exists")
tgz_path = os.path.join(data_path,tgz_path)
urllib.request.urlretrieve(data_url,filename=tgz_path)
data_tgz = tarfile.open(tgz_path)
data_tgz.extractall(path=data_path)
data_tgz.close()