3、爬取干货集中营的福利图片
1 #!/usr/bin/env python
2 #-*- coding: utf-8 -*-
3
4 import json
5 import urllib
6 import requests
7
8
9 # 指定url路径,经过查看url获取的信息:0/0是全部的json信息
10 pre_url = "http://gank.io/api/data/福利/0/0"
11
12 # http://gank.io/
13 # 分类数据: http://gank.io/api/data/数据类型/请求个数/第几页
14 # 数据类型: 福利 | Android | iOS | 休息视频 | 拓展资源 | 前端 | all
15 # http://gank.io/api/data/福利/10/1
16 # 请求个数: 数字,大于0
17 # 第几页:数字,大于0
18
19
20
21 # 图片路径列表,有些图片地址是https的,爬取的话需要验证证书,不爬取https开头的图片
22 http_image_list = []
23 #https_image_list = []
24
25 # 1.获取路径的json数据
26 response = requests.get(pre_url).text
27 # 2.jsong格式转换成字符串
28 data_dict = json.loads(response)
29 # 3.获取图片地址数量
30 num = len(data_dict['results'])
31 for i in range(0,num):
32 url_web = data_dict['results'][i]['url']
33 # http开头的图片路径
34 if url_web.split(':')[0] == 'http':
35 http_image_list.append(url_web)
36 # https开头的图片路径
37 # if url_web.split(':')[0] == 'https':
38 # https_image_list.append(url_web)
39
40 # 保存图片地址为文件
41 with open('http_image.txt','w') as obj:
42 data = json.dumps(http_image_list)
43 obj.write(data)
44
45 # with open('https_image.txt','w') as obj:
46 # data = json.dumps(https_image_list)
47 # obj.write(data)
48
49 # 图片保存路径
50 http_save_path = "D:\\zipai\\"
51
52 # 具体格式可以调整
53 for x in range(0, 304):
54 urllib.request.urlretrieve(http_image_list[x], http_save_path + str(x) + '.jpg')
55 print('保存http第%s张图片' % x)
56
57 # 网站有反爬机制,爬取到303个时被拦截报错,此时,翻转过来,倒着爬取
58 rev = http_image_list[::-1]
59
60 for x in range(0, 267):
61 urllib.request.urlretrieve(rev[x], http_save_path + str(x+304) + '.jpg')
62 print('保存http第%s张图片' % x)
分类:
Python爬虫
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· Docker 太简单,K8s 太复杂?w7panel 让容器管理更轻松!