如何下载 XML 文件避免弹出窗口这种类型的文件可能会通过 ChromeDriver 和 Chrome 使用 Python 中的 Selenium 损害您的计算机

2023-11-23

我想从供应商处下载每日 xml 文件。我成功登录并单击链接“接受下载”以开始使用 chromedriver 下载。

但我收到弹出窗口“这种类型的文件可能会损害您的计算机”。页面的 MIME 是 text/html,我不确定链接是否是 text/javascript

我尝试了所有建议的解决方案,其中包含以下选项

print('Starting..')
prefs = {
'download.default_directory': 'C:\\Users\MainDesk\Downloads',
'download.prompt_for_download': False,
'download.extensions_to_open': 'xml',
'safebrowsing.enabled': False
}

options = Options()

options.add_experimental_option('prefs',prefs)

browser = webdriver.Chrome(options=options, executable_path='C:\\chromedriver.exe')

如何自动获取我的文件?

另外我尝试进入 Chrome 的“设置”并关闭“询问保存文件”

我正在 Windows 7 上运行该脚本,使用 Python 3.7 和 Visual Studio 以及最新版本的 chromedriver

不可能自动下载吗?


有关的更多信息webpage从你想要的地方download the xml文件可能有助于调试弹出窗口的问题,其中文本为“这种类型的文件可能会损害您的计算机以更好的方式。

不过,这里有一个示例程序可供下载xml文件来自这个网页:

  • 代码块:

    from selenium import webdriver
    from selenium.webdriver.common.by import By
    from selenium.webdriver.support.ui import WebDriverWait
    from selenium.webdriver.support import expected_conditions as EC
    
    prefs = {
    'download.default_directory': 'C:/Utility/Downloads/',
    'download.prompt_for_download': False,
    'download.extensions_to_open': 'xml',
    'safebrowsing.enabled': True
    }
    options = webdriver.ChromeOptions()
    options.add_experimental_option('prefs',prefs)
    options.add_argument("start-maximized")
    # options.add_argument("disable-infobars")
    options.add_argument("--disable-extensions")
    options.add_argument("--safebrowsing-disable-download-protection")
    options.add_argument("safebrowsing-disable-extension-blacklist")
    driver = webdriver.Chrome(options=options, executable_path=r'C:\Utility\BrowserDrivers\chromedriver.exe')
    driver.get("http://www.landxmlproject.org/file-cabinet")
    WebDriverWait(driver, 20).until(EC.element_to_be_clickable((By.XPATH, "//span[text()='MntnRoad.xml']//following::span[1]//a[text()='Download']"))).click()
    
  • 浏览器快照:

xml_download

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何下载 XML 文件避免弹出窗口这种类型的文件可能会通过 ChromeDriver 和 Chrome 使用 Python 中的 Selenium 损害您的计算机 的相关文章

随机推荐

  • 导入错误:没有名为 Bottle 的模块

    sudo pip install bottle Downloading unpacking bottle Downloading bottle 0 10 7 tar gz 55Kb 55Kb downloaded Running setup
  • 此视图不允许“EditItem” - 数据绑定问题

    我正在尝试使用自定义列表在数据网格上的 WPF 中进行数据绑定 我的自定义列表类包含类型的私有数据列表List
  • 绘制到 CGImageRef 中

    我想创建一个 CGImageRef 并绘制指向它的点 使用什么上下文来创建空的 CGImageRef 并能够在其上进行绘制 CGContextRef 还是 CGBitmapContextRef 如果您可以提供代码来创建一个空的 CGImag
  • 如何在 C# 中查找 IIS 站点 ID?

    我正在为我的网络服务编写一个安装程序类 在许多情况下 当我使用 WMI 时 例如 创建虚拟目录时 我必须知道 siteId 才能为站点提供正确的配置数据库路径 例如 metabasePath is of the form IIS
  • Xcode 7.2 成功存档不会显示在管理器中,但会显示在有关派生数据文件夹的存档文件夹中

    我在用Cocoapods 0 39 0 and Xcode 7 2 我有一个项目已成功存档但未填充到管理器中 当我在空白项目中测试我的 podfile 时 存档显示在Organizer正好 在尝试解决此问题时 我发现派生数据上方有一个 Ar
  • 在 Chrome 扩展中,更改发送到特定域的 ajax 请求的引荐来源网址?

    我已经做了一些研究 现在知道在 Google Chrome 中发送带有更改的引荐来源网址的请求是不可能的 因为浏览器将覆盖更改 但是 Google Chrome 扩展中是否有 任何权限可以禁用此功能 或者以便您可以使用不同的引荐来源网址向某
  • 如何自动运行 Office 365 Outlook 加载项

    我正在为 Outlook 创建 Office 365 加载项 我希望我的加载项在用户阅读电子邮件 在阅读窗格中打开它 时自动运行 我当前的版本在邮件正文顶部显示加载项名称 当我单击它时加载项就会运行 Office initialize fu
  • 如何设置 UIImage 的不透明度/alpha?

    我知道你可以用 UIImageView 做到这一点 但是可以对 UIImage 做到这一点吗 我想让 UIImageView 的动画图像数组属性成为相同图像但具有不同不透明度的数组 想法 我只需要这样做 但认为史蒂文的解决方案会很慢 这应该
  • 是否有任何 jquery 功能可以以与 DOM 类似的方式查询多维数组?

    问题说了什么 jQuery 是否有任何方法可以让您以与 DOM 类似的方式查询多维对象数组 例如 获取一个多维数组中包含的对象列表 该数组具有一些匹配的属性值 例如 其中 StartOfPeriod 大于指定日期或 name Ben Ala
  • Objective-C 串口 - Mac OS X

    我目前正在终端中运行以下命令 通过 USB 串行发送命令 Users drummerboyx Library Scripts arduino serial b 9600 p dev tty usbserial A800ev0Z s 1 Ob
  • 使用 AJAX(不是表单)更新 Rails 3 部分

    我发现了一些关于提交表单后使用 Ajax 更新部分内容的问题和答案 但我的问题是 更简单 我只想每隔几秒重新加载一部分并加载新数据 这真的一点也不难 我记得在 Rails 2 3 中做过类似的事情 但我在任何地方都找不到答案 基本上 我有一
  • junit 测试中的 spring-data-jpa bean 验证

    在我最近的工作中 我使用 spring data jpa 来利用提供的存储库 当涉及到集成测试时 我无法配置 我假设 用于测试的 spring 上下文 因此 bean 验证在我的测试中不起作用 我知道我可以注入验证器 并对我的注释进行单元测
  • Oracle 在 DATE 使用 LIKE '%'

    我的桌子myTab有专栏startDate 其数据类型为 DATE 该列中的数据存储方式如下dd mm yyyy 现在我尝试使用此查询获取数据 SELECT FROM myTab WHERE startDate like 01 2015 不
  • 如何在Tlistview中基于subitem[x]排序

    如何排序tlistview数据存在于subitem x Set SortType stData和写 procedure TForm1 ListView1Compare Sender TObject Item1 Item2 TListItem
  • 无法在 PyQt5 中导入 QtWebKitWidgets

    我最近使用 Windows 32 位安装程序将 PyQt5 从 5 5 1 升级到 5 6 0 https www riverbankcomputing com software pyqt download5 我还将我的 python 从
  • Android 音频 SeekBar

    我正在尝试创建一个可以播放单个音频文件并且可以使用进度 搜索栏暂停和操作的东西 我想要一个图像占据大部分屏幕 然后在左下角有一个播放暂停按钮 在按钮右侧有一个栏 一切都在搜索栏上运行 但未链接到音频 我的进度条编码可能是一团糟 因为如果从我
  • 将多个域添加到 azure 网站

    我正在将一个相当重要的多租户应用程序迁移到 Azure 我看到的挑战之一是它托管着一百多个域 在 Azure 方面 我认为添加自定义域的唯一方法是通过门户手动输入它们 我真的很想使用 Azure PowerShell 或 对于这种一次性操作
  • 如何获取 Win32 中的 CPU 周期数?

    在 Win32 中 有没有办法获得唯一的 cpu 周期计数或类似的东西 对于多个进程 语言 系统 等来说是统一的 我正在创建一些日志文件 但必须生成多个日志文件 因为我们托管 NET 运行时 并且我希望避免从一个日志文件调用另一个日志文件来
  • iOS 5 + GLKView:如何访问像素 RGB 数据以进行基于颜色的顶点拾取?

    我一直在转换我自己的个人 OGLES 2 0 框架 以利用新的 iOS 5 框架添加的功能GLKit 在获得令人满意的结果后 我现在希望实现所描述的基于颜色的拾取机制here 为此 您必须访问后台缓冲区以检索触摸的像素 RGBA 值 然后将
  • 如何下载 XML 文件避免弹出窗口这种类型的文件可能会通过 ChromeDriver 和 Chrome 使用 Python 中的 Selenium 损害您的计算机

    我想从供应商处下载每日 xml 文件 我成功登录并单击链接 接受下载 以开始使用 chromedriver 下载 但我收到弹出窗口 这种类型的文件可能会损害您的计算机 页面的 MIME 是 text html 我不确定链接是否是 text