图片爬取案例

devtools/2025/2/28 8:24:14/

修改前的代码

但是总显示“失败”

原因是

修改之后的代码

import requests
import os
from urllib.parse import unquote# 原始URL
url = 'https://cn.bing.com/images/search?view=detailV2&ccid=TnImuvQ0&id=5AE65CE4BE05EE7A79A73EEFA37578E87AE19421&thid=OIP.TnImuvQ0eOu3Ncn8G7W4BQHaE8&mediaurl=https%3a%2f%2fpic.nximg.cn%2ffile%2f20230512%2f33688781_144207815103_2.jpg&exph=683&expw=1024&q=%e9%87%8d%e5%ba%86%e9%82%ae%e7%94%b5%e5%a4%a7%e5%ad%a6%e5%9b%be%e7%89%87%e5%ba%93&simid=608017321150603477&FORM=IRPRST&ck=82C8DD3330C84300350495177BFC73F6&selectedIndex=0&itb=0&idpp=overlayview&ajaxhist=0&ajaxserp=0'# 解析出实际的图片URL
media_url_encoded = url.split('mediaurl=')[-1].split('&')[0]
media_url = unquote(media_url_encoded)# 定义保存图片的目录和文件名
root = 'E://'
filename = media_url.split('/')[-1]
path = os.path.join(root, filename)try:# 确保目录存在if not os.path.exists(root):os.makedirs(root)# 如果文件不存在,则下载图片if not os.path.exists(path):response = requests.get(media_url)response.raise_for_status()  # 如果请求出错,这里会抛出HTTPError异常with open(path, "wb") as f:f.write(response.content)print("文件保存成功")else:print("文件已存在,未进行下载")
except requests.RequestException as e:print(f"请求错误: {e}")
except Exception as e:print(f"发生错误: {e}")


http://www.ppmy.cn/devtools/163307.html

相关文章

毛泽东思想“活的灵魂”

关于毛泽东思想“活的灵魂”的构成及其内涵,综合历史文献与权威表述,核心内容整理如下: 一、毛泽东思想活的灵魂的权威定义 根据十一届六中全会《关于建国以来党的若干历史问题的决议》(1981年),毛泽东思想…

机器学习数学基础:33.肯德尔和谐系数教程

肯德尔和谐系数教程 一、定义与用途 肯德尔和谐系数(Kendall’s W)是一种用于衡量多个评价者对一组对象进行评价时,评价结果一致性程度的统计量。它的取值范围在0到1之间。当W \ 0时,表示评价者之间的评价完全不一致&#xff1…

Spring Boot启动过程?

目录 1. 启动入口 2. SpringApplication 初始化 3. 准备环境 4. 创建应用上下文(ApplicationContext) 5. 准备应用上下文 6. 刷新应用上下文 7. 启动 Web 服务器(若为 Web 应用) 8. 发布 ApplicationStartedEvent 事件 9. 执行 Runner 10. 发布 ApplicationReady…

macos下cocoapods的学习

step1:升级ruby $ /bin/bash -c " $ (curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)" $ brew update $ brew install ruby $ echo export PATH"/usr/local/opt/ruby/bin:$PATH" >> ~/.bash_profile …

STM32编译过程

STM32编译过程 1. 编译过程介绍2. 程序的组成、存储与运行3. 编译工具链3.1 armcc 工具3.2 armasm 工具3.3 armlink 工具3.4 armar 工具3.5 fromelf 工具 4. MDK工程的文件类型 1. 编译过程介绍 编译MDK 软件使用的编译器是 armcc 和 armasm,它们根据每个 c/c 和汇编…

MAC 安装Tensorflow简单方法

MacOS M1 pro安装tensorflow 1、环境配置(必需) PYTHON版本:3.11.0,python采用homebrew安装。(已有python或更高版本可跳过,更高版本未经过测试,题主自认为可行) brew install pyt…

AWS S3 如何设置公开访问权限?

1.让整个bucket都有公开访问权限 1.1关闭【阻止公共读】 1.2关闭ACL访问控制 1.3打开桶策略 这样桶内所有的图片就能访问了 2.只开放特定文件让其具有访问权限? 2.1关闭【阻止公共读】 如之前的图示 2.2打开ACL控制 2.3单个文件打开公共读

go 查看版本

个人学习笔记 1. 打开终端(或命令提示符) 在 Windows 上,使用 cmd 或 PowerShell。在 macOS 或 Linux 上,使用终端应用程序。 2. 运行以下命令 go version 3. 查看输出 命令执行后,终端会显示已安装的 Go 版本&…