if r.status_code == 200: file_path = '{0}/{1}.{2}'.format(item.get('title'), md5(r.content).hexdigest(), 'jpg') if not os.path.exists(file_path): with open(file_path, 'wb') as f: f.write(r.content) else: print('Already Downloaded', file_path) except requests.ConnectionError: print('Failed to save image') def main(offset): json = get_page(offset) for item in get_images(json): print(item) save_image(item) GROUP_START = 1 GROUP_END = 5 # 多线程 if __name__ == '__main__': pool = Pool() groups = ([x * 20 for x in range(GROUP_START, GROUP_END + 1)]) pool.map(main, groups) pool.close() pool.json()