将下载内容保存在Windows操作系统上Python的生成目录中
我目前正在尝试从internet自动下载图像。使用Python 2.7时,我的URL与以下类似:- 我希望做的是: 使用用户部件作为目录名。 将相册部分用作子目录名称。 将图像保存在相应的子目录中。 我可以毫无问题地将图像下载到根目录中,但是当我尝试应用下面的命令时,我得到了一个错误。这是我的密码:-将下载内容保存在Windows操作系统上Python的生成目录中,python,python-2.7,urllib2,urllib,Python,Python 2.7,Urllib2,Urllib,我目前正在尝试从internet自动下载图像。使用Python 2.7时,我的URL与以下类似:- 我希望做的是: 使用用户部件作为目录名。 将相册部分用作子目录名称。 将图像保存在相应的子目录中。 我可以毫无问题地将图像下载到根目录中,但是当我尝试应用下面的命令时,我得到了一个错误。这是我的密码:- import os import urllib # this is the URL for the image thumbnail = "http://www.myphotos.com/use
import os
import urllib
# this is the URL for the image
thumbnail = "http://www.myphotos.com/user/album/photoID.jpg"
# Put the images in the directory for user and album
user = thumbnail.split('/')[3]
album = thumbnail.split('/')[4]
image_dir_location = "/" + user + "/" + album
if not os.path.exists(image_dir_location):
os.makedirs(image_dir_location)
urllib.urlretrieve(thumbnail, image_dir_location + thumbnail.split('/')[6])
当我运行这个脚本时,它似乎根本不会下载任何文件,也不会生成目录。奇怪的是,它也不会产生任何错误。您的图像方向位置是一条绝对路径。你应该省去前导的/。此外,您的目录创建策略很脆弱。更喜欢使用os.makedirs…,exists\u ok=True并去掉检查。您的索引也是假的。我认为从末尾开始索引会更容易:urlparts=url.split'/';image=urlparts[-1];相册=urlparts[-2];user=urlparts[-3];请注意,我只拆分了一次字符串,并且使用了更多描述性变量名。您可能还需要查看os.path。另一个问题是,您需要在urlretrieve调用中的image_dir_位置和缩略图.split'/'[6]之间添加路径分隔符。