selenium 下载文件取消安全下载的方法

问题描述

我要从一个网站上下载文件,谷歌浏览器总是自动阻止下载,并询问我是否保留。
可是,我想要的是不要询问,默认下载即可。

运行环境
  • OS: macOS
  • selenium: 4.19.0
  • python: 3.10.11
  • Chrome: 124.0.6367.62
  • selenium chromedriver: 123.0.6312.58
尝试无效方案

尝试selenium 下载文件取消安全下载的配置 博客中配置:

from undetected_chromedriver import Chrome, Options

options = Options()

# 禁用下载保护,允许下载所有类型的内容
options.add_experimental_option("prefs", { "download_restrictions": 0 })
options.add_experimental_option("prefs", { "safebrowsing.enabled": False })

# 配置文件下载路径
options.add_experimental_option("prefs", {
    "download.default_directory": "/path/to/download/directory",
    "download.prompt_for_download": False,
    "download.directory_upgrade": True,
    "safebrowsing_for_trusted_sources_enabled": False,
    "safebrowsing.enabled": False
})

# 运行 Chrome,并隐藏窗口以在后台执行
options.add_argument("--headless")
options.add_argument("--disable-gpu")

with Chrome(options=options) as browser:
    # 转到目标网页
    browser.get("https://example.com/downloads/myfile.docx")

    # 找到下载链接并点击下载文件
    download_link = browser.find_element_by_xpath("//a[@download]")
    download_link.click()

    # 一旦下载开始,等待文件下载完成
    while not any(fname.endswith(".docx") for fname in os.listdir("/path/to/download/directory")):
        time.sleep(1)
    print("Download completed!")

按照如上配置,无效,浏览器仍然有阻止行为。

解决方案

⚠️注意:必须设置selenium打开的浏览器哈!
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

将自己要打开的网站地址添加到这里即可。
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mfbz.cn/a/555462.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

工会排队模式:创新营销的双赢之道

工会排队模式全面解读 在当今数字化营销的大潮中,促销方式层出不穷,但能真正抓住消费者眼球并带来双方共赢的模式并不多见。而工会排队模式便是在这样的背景下崭露头角,它巧妙地融合了工会积分、奖金池与排队机制,为消费者与商家…

linux进阶篇:重定向和管道操作

Linux中的重定向和管道操作 llinux中的三种IO设备: 标准输入(STDIN),文件描述符号为:0,默认从键盘获取输入 标准输出(STDOUT),文件描述符号位:1,默认输出到显示终端 标准…

java宠物领养系统的设计与实现(springboot+mysql+源码)

风定落花生,歌声逐流水,大家好我是风歌,混迹在java圈的辛苦码农。今天要和大家聊的是一款基于springboot的宠物领养系统的设计与实现。项目源码以及部署相关请联系风歌,文末附上联系信息 。 项目简介: 基于Spring Bo…

udemy视频教程下载:AI和ChatGPT提示工程精通指南

欢迎来到 ChatGPT 大师班! 这个 ChatGPT 大师班:AI 和提示工程指南是您通往 AI 未来的全通道通行证。 以下是您的学习旅程: 理解和掌握 ChatGPT:您将深入了解 AI 和语言模型,重点是 ChatGPT。我们设计了这个部分&am…

Linux--进程间的通信-命名管道

前文: Linux–进程间的通信-匿名管道 Linux–进程间的通信–进程池 命名管道的概念 命名管道是一种进程间通信(IPC)机制,运行不同进程之间进行可靠的、单向或双向的数据通信。 特点和作用: 跨平台性:在W…

ue4打包多模块

首先,每个模块,包含插件内的模块在内,都要用IMPLEMENT_MODULE(类名, 模块名)的方式,模块名就是带.build.cs的第一个单词。 build.cs里就说了这个模块该怎么用,用c#编写。 打包中要考虑到target.cs,将工程中相应的模块…

Linux服务器磁盘满了如何清理

生产环境中,磁盘很容易被日志文件沾满,如何查找和清理呢? 分享一下个人的经验: 1.先查询到哪个磁盘占用的最多 使用命令:df -h 2.查询/目录下磁盘占用情况 使用命令:du -sh * 3.同理进入占用磁盘比较大…

聊聊binlog是什么

1. 上一讲思考題解答:redo日志刷盘策略的选择建议 先给大家解释一下上一讲的思考題,我给大家的一个建议,其实对于redo日志的三种刷盘策略,我们通常建议是设置为1 也就是说,提交事务的时候,redo日志必须是刷入磁盘文件…

接口测试之用Fiddler对手机app进行抓包

🔥 交流讨论:欢迎加入我们一起学习! 🔥 资源分享:耗时200小时精选的「软件测试」资料包 🔥 教程推荐:火遍全网的《软件测试》教程 📢欢迎点赞 👍 收藏 ⭐留言 &#x1…

基于FPGA的OMEGA东京奥运会计时器

截至2019年共举办了31届奥运会,其中27届的计时设备都由欧米茄(OMEGA,Ω)提供,今年的东京奥运会将会是第28届。 瑞士计时公司(Swiss Timing)基于火星Mars ZX2核心板打造了为奥运会等大型体育赛事…

Redis教程——数据类型(哈希、集合)

上篇文章我们学习了Redis教程——数据类型(字符串、列表),这篇文章学习Redis教程——数据类型(哈希表、集合) 哈希表Hash 哈希表是一个string类型的field(字段)和value(值)的映射表,hash特别适合用于存储…

web轮播图

思路: 例如:有5张轮播的图片,每张图片的宽度为1024px、高度为512px.那么轮播的窗口大小就应该为一张图片的尺寸,即为:1024512。之后将这5张图片0px水平相接组成一张宽度为:5120px,高度依然为:5…

问题解决:pip install __命令安装不了Python库

项目环境: 我的环境:Window10,Python3.7,Anaconda3-2.4.0,Pycharm2023.1.3 问题描述①: pip install 命令安装不了需要的安装的Python库,以PyMuPDF为例 1 socket.timeout: The read operation t…

ICASSP 2024会议现场第四弹 晚会上韩风歌舞惊喜连连

会议之眼 快讯 在科技的浪潮中,ICASSP 2024会议作为全球信号处理领域的风向标,今日在充满活力韩国迎来了它的第五天日程!会场中热烈的讨论和灵感迸发的交流,让会场仿佛成为一座思想的熔炉,不断燃烧着创新的火花&#…

2024经常用且免费的10个网盘对比,看看哪个比较好用!

网盘在我们的工作和学习中经常会用到,也是存储资料的必备工具,有了它,我们就不用走到哪都带着移动硬盘了,而目前市场上的主流网盘还有数十款,其中有免费的也有付费的,各家不一,今天小编就来为您…

ins视频批量下载,instagram批量爬取视频信息【爬虫实战课1】

简介 Instagram 是目前最热门的社交媒体平台之一,拥有大量优质的视频内容。但是要逐一下载这些视频往往非常耗时。在这篇文章中,我们将介绍如何使用 Python 编写一个脚本,来实现 Instagram 视频的批量下载和信息爬取。 我们使用selenium获取目标用户的 HTML 源代码,并将其保存…

Unity解决:导出安卓apk 安装时报错:应用未安装:软件包似乎无效

Unity2018.4.36 导出安卓apk 安装时报错:应用未安装:软件包似乎无效 解决办法:因为安装到安卓12 需要添加添加过滤规则 在AS工程AndroidManifest.xml 添加过滤规则即可。 android:exported"true"

爬虫 | 网易新闻热点数据的获取与保存

Hi,大家好,我是半亩花海。本项目是一个简单的网络爬虫,用于从网易新闻的热点新闻列表中提取标题和对应的链接,并将提取到的数据保存到一个 CSV 文件中。 目录 一、技术栈 二、功能说明 三、注意事项 四、代码解析 1. 导入所需…

[天梯赛] 图上的动态规划与Dijkstra

题目 刚开始的思路 一开始是想到了要用Dijkstra,但是不知道如何找到多条路径的信息(刚开始是想把所有最短路找到之后再比较找到最大的救援队数量) 正确的思路 在Dijkstra的过程中,分两种情况: 找到更短路径进行更新…

geolife笔记/python笔记:trackintel.io.read_geolife

此函数解析 geolife_path 目录中可用的所有 geolife 数据 trackintel.io.read_geolife(geolife_path, print_progressFalse) 参数: geolife_path (str) 包含 geolife 数据的目录路径 print_progress (Bool, 默认为 False)如果设置为 True,则显示每个…
最新文章