网址
一本图书ID中有4个jpg文件。
有749 - 826本书ID
最后的网址是
我尝试使用两个“for循环和while循环”来获取所有url,但总是失败。
# -*- coding: UTF-8 -*-
base_url = "http://url.com/"
page = "/page-"
jpg = ".jpg"
for bookid in range(749,827):
url = base_url + str(bookid) + page
for n in range(1,5):
u = url + str(n) + jpg
print (u)
逻辑是我想获得1本书ID和1-4 jpg,然后按书ID创建一个文件夹。将1-4页逐页移动到文件夹。
由https://stackoverflow.com/users/5436472/pawanvir-singh解析
非常感谢你!
答案 0 :(得分:0)
import urllib
import os
book_ids = list(range(749 ,827))
page_ids = ["page-1.jpg","page-2.jpg","page-3.jpg","page-4.jpg"]
all_url = []
base_url ="http://url.com/"
for book_id in book_ids:
books =[]
for page_id in page_ids:
books.append(base_url+str(book_id)+"/"+str(page_id))
all_url.append({book_id:books})
for data in all_url:
directory ="new/"+str(data.keys()[0])
if not os.path.exists(directory):
os.makedirs(directory)
count = 0
for urls in data.items()[0][1]:
#print urls
filename = page_ids[count]
#print filename
fullfilename = os.path.join(directory, filename)
urllib.urlretrieve(urls, fullfilename)
count= count+1
现在你拥有所有具有相应图书ID的网址,如果有一些内容希望它有帮助,它会下载
答案 1 :(得分:0)
在您拥有网址后,您可以下载并存储图片,如下所示:
import urllib
import os
for bookid in range(749,827):
url = base_url + str(bookid) + page
for n in range(1,5):
u = url + str(n) + jpg
if not os.path.exists(str(bookid)):
os.makedirs(str(bookid))
urllib.urlretrieve(u,str(bookid)+"/page"+str(n)+".jpg")