哈哈哈哈嗝,闲来无事又来搞事情了
记得上次爬取还是看的别人写的代码仿照的,这次.....
对没错,自己实现了(程序小白心里有点小开心)
----------------------------------- 分割线 -----------------------------
要说这个原理,很简单,可以说是没啥技术含量
去SNH48官网找到成员公示照在服务器上的保存路径,然后接下来就是保存了~
1 import requests 2 import time 3 4 def download_images(save_path, start, end): 5 count = 0 6 for i in range(start, end): 7 url = base_url_1 + str(i) + base_url_2 8 r = requests.get(url) 9 if r.status_code == 404: 10 print("图片[%s.jpg]未找到..." % i) 11 else: 12 img_name = url.split(‘/‘)[-1] 13 img_path = save + save_path + "\\" + img_name 14 with open(img_path, ‘wb‘) as f: 15 f.write(r.content) 16 print("图片 [%s.jpg] 保存成功!" % i) 17 time.sleep(0.8) 18 count += 1 19 if count % 25 == 0: 20 print(‘休息十秒先...‘) 21 time.sleep(10) 22 print(" [%s] 的全部图片保存完成!" % save_path) 23 print("\n\n") 24 25 26 if __name__ == ‘__main__‘: 27 base_url_1 = "https://www.snh48.com/images/member/zp_" 28 base_url_2 = ".jpg" 29 save = "C:\\Users\\16671\\Desktop\\" 30 member_pool = { 31 "SNH48": ["SNH48", 10001, 10227], 32 "BEJ48": ["BEJ48", 20084, 20119], 33 "GNZ48": ["GNZ48", 30001, 30111], 34 }
35 download_images(member_pool["SNH48"][0], member_pool["SNH48"][1], member_pool["SNH48"][2]) 36 download_images(member_pool["BEJ48"][0], member_pool["BEJ48"][1], member_pool["BEJ48"][2]) 37 download_images(member_pool["GNZ48"][0], member_pool["GNZ48"][1], member_pool["GNZ48"][2]) 38 print("全部图片下载成功!")
原文:https://www.cnblogs.com/skygrass0531/p/12396821.html