Python爬虫实战:爬取https://file.kole8.com图片全流程优化与注意事项
以下是对您代码的一些分析和建议: ```python import requests import parsel import os for page in range(1, 12): response = requests.get(f'https://file.kole8.com/zhuanti/file_upload/20251/page/{page}') # 建议添加异常处理,以应对网络请求可能出现的错误 try: response.raise_for_status() except requests.exceptions.HTTPError as e: print(f"请求页面 {page} 时发生 HTTP 错误: {e}") continue selector = parsel.Selector(response.text) lis = selector.xpath("//ul[@class='b2_gap ']/li") for li in lis: title = li.xpath('.//h2/a/text()').get() print(f'-------------正在爬取{title}-------------') # 优化文件夹创建逻辑,使用 os.makedirs 函数创建多层目录,并添加异常处理 try: os.makedirs('./img/' + title, exist_ok=True) except OSError as e: print(f"创建文件夹 {title} 时出错: {e}") continue href = li.xpath('.//h2/a/@href').get() data_html = requests.get(href).text selector_2 = parsel.Selector(data_html) img_p = selector_2.xpath('//div[@class="entry-content"]/p') for img in img_p: img_list = img.xpath('.//img/@src').getall() for img_1 in img_list: try: img_data = requests.get(img_1).content except: continue img_name = img_1.split('/')[-1] with open(f'img\\{title}\\{img_name}', mode='wb') as f: f.write(img_data) print('下载完成:', img_name) # 额外需要注意的逻辑点: # 1. 注意遵守网站的使用规则和法律法规,确保您的爬虫行为是合法合规的。 # 2. 考虑添加适当的延迟,避免对目标网站造成过大的访问压力。 # 3. 对于可能出现的大量数据,要确保有足够的存储空间来保存下载的图片。 ``` ######[AI写代码神器 | 530点数解答 | 2025-01-05 12:50:26]
- Python 运行报错:urllib3 网络连接创建失败,原因及排查建议(字节豆包 | 161点数解答 | 2024-10-31 00:39:36)458
- 代码修正:解决文件找不到与内存问题,正确处理测试用例(DeepSeek | 443点数解答 | 2026-01-06 17:52:45)41
- 瑞士轮赛制模拟与边界防御:从 IndexError 到 AC 的完整修复指南(阿里通义 | 2326点数解答 | 2026-03-20 12:17:10)4
- 解决 Python 使用 insert_many 插入 MongoDB 数据报错问题的全攻略(阿里通义 | 588点数解答 | 2024-12-12 00:27:27)289
- Python爬虫:多页图片爬取与本地保存全流程揭秘(字节豆包 | 119点数解答 | 2025-01-05 12:49:42)257
- Python 网页图片爬取代码分析与优化建议:异常处理、路径优化及爬取规则遵守(字节豆包 | 172点数解答 | 2025-01-05 12:50:16)227
- Python爬虫实战:爬取https://file.kole8.com图片全流程优化与注意事项 (字节豆包 | 530点数解答 | 2025-01-05 12:50:26)193
- 从错误信息“ValueError”入手:修改代码以正确解析含多参数输入格式(DeepSeek | 182点数解答 | 2026-01-06 12:34:41)49
- 递归图形生成难题:从报错到完美解决方案的探索(讯飞星火 | 2049点数解答 | 2026-01-07 17:47:12)36
- 过河卒AC终极修复版:健壮读入+马控点标记+DP路径计数(阿里通义 | 1940点数解答 | 2026-03-12 17:58:14)18
- "Resolve 'subprocess-exited-with-error' in pypiwin32: Python 3 Compatibility Fixes"(讯飞星火 | 559点数解答 | 2024-11-22 20:16:30)281
- 超甜!用 HTML 代码让你无法拒绝成为千一的恋人(DeepSeek | 1411点数解答 | 2025-07-26 08:37:17)196