Merge pull request #1944 from sciunto/temp_file

MAINT: fixes #1652
This commit is contained in:
Juan Nunez-Iglesias
2016-02-16 17:59:55 +11:00
+4 -3
View File
@@ -24,10 +24,11 @@ def file_or_url_context(resource_name):
"""Yield name of file from the given resource (i.e. file or url)."""
if is_url(resource_name):
_, ext = os.path.splitext(resource_name)
with tempfile.NamedTemporaryFile(delete=False, suffix=ext) as f:
u = urlopen(resource_name)
f.write(u.read())
try:
with tempfile.NamedTemporaryFile(delete=False, suffix=ext) as f:
u = urlopen(resource_name)
f.write(u.read())
# f must be closed before yielding
yield f.name
finally:
os.remove(f.name)