Skip to content

Commit 3e9f4f1

Browse files
committed
fixes #327
1 parent d3dfa7f commit 3e9f4f1

File tree

4 files changed

+34
-11
lines changed

4 files changed

+34
-11
lines changed

fastcore/__init__.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
__version__ = "1.3.20"
1+
__version__ = "1.3.21"

fastcore/net.py

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -134,15 +134,17 @@ def urlcheck(url, timeout=10):
134134
# Cell
135135
def urlclean(url):
136136
"Remove fragment, params, and querystring from `url` if present"
137-
return urlunparse(urlparse(url)[:3]+('','',''))
137+
return urlunparse(urlparse(str(url))[:3]+('','',''))
138138

139139
# Cell
140140
def urlsave(url, dest=None):
141141
"Retrieve `url` and save based on its name"
142142
res = urlread(urlwrap(url), decode=False)
143-
if dest is None: dest = Path(url).name
144-
name = urlclean(dest)
145-
Path(name).write_bytes(res)
143+
name = urlclean(Path(url).name)
144+
if dest is None: dest = name
145+
dest = Path(dest)
146+
if dest.is_dir(): dest = dest/name
147+
Path(dest).write_bytes(res)
146148
return dest
147149

148150
# Cell

nbs/03b_net.ipynb

Lines changed: 26 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -348,7 +348,7 @@
348348
"#export\n",
349349
"def urlclean(url):\n",
350350
" \"Remove fragment, params, and querystring from `url` if present\"\n",
351-
" return urlunparse(urlparse(url)[:3]+('','',''))"
351+
" return urlunparse(urlparse(str(url))[:3]+('','',''))"
352352
]
353353
},
354354
{
@@ -370,12 +370,32 @@
370370
"def urlsave(url, dest=None):\n",
371371
" \"Retrieve `url` and save based on its name\"\n",
372372
" res = urlread(urlwrap(url), decode=False)\n",
373-
" if dest is None: dest = Path(url).name\n",
374-
" name = urlclean(dest)\n",
375-
" Path(name).write_bytes(res)\n",
373+
" name = urlclean(Path(url).name)\n",
374+
" if dest is None: dest = name\n",
375+
" dest = Path(dest)\n",
376+
" if dest.is_dir(): dest = dest/name\n",
377+
" Path(dest).write_bytes(res)\n",
376378
" return dest"
377379
]
378380
},
381+
{
382+
"cell_type": "code",
383+
"execution_count": null,
384+
"metadata": {},
385+
"outputs": [
386+
{
387+
"name": "stdout",
388+
"output_type": "stream",
389+
"text": [
390+
"[Path('/tmp/tmpr3kv5gq_/index.html')]\n"
391+
]
392+
}
393+
],
394+
"source": [
395+
"#skip\n",
396+
"with tempfile.TemporaryDirectory() as d: urlsave('http://www.google.com/index.html', d)"
397+
]
398+
},
379399
{
380400
"cell_type": "code",
381401
"execution_count": null,
@@ -626,7 +646,8 @@
626646
"Converted 05_transform.ipynb.\n",
627647
"Converted 07_meta.ipynb.\n",
628648
"Converted 08_script.ipynb.\n",
629-
"Converted index.ipynb.\n"
649+
"Converted index.ipynb.\n",
650+
"Converted parallel_win.ipynb.\n"
630651
]
631652
}
632653
],

settings.ini

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ author = Jeremy Howard and Sylvain Gugger
77
author_email = [email protected]
88
copyright = fast.ai
99
branch = master
10-
version = 1.3.20
10+
version = 1.3.21
1111
min_python = 3.6
1212
audience = Developers
1313
language = English

0 commit comments

Comments
 (0)