在贴吧找到一组图片,记录了皇骑隐藏宝物的地址,但手机端访问的时候总是提示要求下载贴吧的app,博主用的64g内存的手机,光一个千牛就占了12g,实在没有太多空间来安装多余的app,所以就想把图片转载到自己的博客上。
首先是审查元素提取图片地址,有了deepseek之后,这个操作就方便了许多,美中不足的是,deepseek的逐行输出的方式过于浪费时间,好在图片不多,只有34张。
python3程序
import requests
import os
import time
# 图片URL列表
image_urls = []
# 创建保存图片的文件夹
save_folder = "The_Knight_of_Lodis_Treasure"
if not os.path.exists(save_folder):
os.makedirs(save_folder)
# 设置请求头,模拟浏览器访问
headers = {
'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36'
}
# 下载图片
success_count = 0
fail_count = 0
print(f"开始下载图片到文件夹: {save_folder}")
print(f"总共 {len(image_urls)} 张图片")
for i, url in enumerate(image_urls, 1):
try:
# 生成文件名
filename = f"The_Knight_of_Lodis_Treasure_{i}.jpg"
filepath = os.path.join(save_folder, filename)
print(f"正在下载第 {i} 张图片: {filename}")
# 发送请求
response = requests.get(url, headers=headers, timeout=30)
response.raise_for_status() # 检查请求是否成功
# 保存图片
with open(filepath, 'wb') as f:
f.write(response.content)
success_count += 1
print(f" 下载成功: {filename}")
# 添加短暂延迟,避免请求过于频繁
time.sleep(0.5)
except requests.exceptions.RequestException as e:
fail_count += 1
print(f" 下载失败: {filename} - 错误: {str(e)}")
except Exception as e:
fail_count += 1
print(f" 保存失败: {filename} - 错误: {str(e)}")
print("\n下载完成!")
print(f"成功: {success_count} 张")
print(f"失败: {fail_count} 张")
print(f"图片保存在: {os.path.abspath(save_folder)}")python2版本程序
import requests
import os
import time
import sys
# 图片URL列表
image_urls = [
"您的地址1",
"您的地址2"
]
# 创建保存图片的文件夹
save_folder = "The_Knight_of_Lodis_Treasure"
if not os.path.exists(save_folder):
os.makedirs(save_folder)
# 设置请求头,模拟浏览器访问
headers = {
'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36'
}
# 下载图片
success_count = 0
fail_count = 0
print "开始下载图片到文件夹: %s" % save_folder
print "总共 %d 张图片" % len(image_urls)
for i, url in enumerate(image_urls, 1):
try:
# 生成文件名
filename = "The_Knight_of_Lodis_Treasure_%d.jpg" % i
filepath = os.path.join(save_folder, filename)
print "正在下载第 %d 张图片: %s" % (i, filename)
# 发送请求
response = requests.get(url, headers=headers, timeout=30)
response.raise_for_status() # 检查请求是否成功
# 保存图片
with open(filepath, 'wb') as f:
f.write(response.content)
success_count += 1
print " 下载成功: %s" % filename
# 添加短暂延迟,避免请求过于频繁
time.sleep(0.5)
except requests.exceptions.RequestException as e:
fail_count += 1
print " 下载失败: %s - 错误: %s" % (filename, str(e))
except Exception as e:
fail_count += 1
print " 保存失败: %s - 错误: %s" % (filename, str(e))
print "\n下载完成!"
print "成功: %d 张" % success_count
print "失败: %d 张" % fail_count
print "图片保存在: %s" % os.path.abspath(save_folder)

