python-3.x - 使用 selenium 时禁用 Safari 中的自动化警告

标签 python-3.x selenium automation safari safaridriver

我想在 safari 中使用 Selenium 进行测试。

不幸的是,当我尝试使用 safari 调试问题时,会出现一条通知,要求我在 safari 中禁用自动化或退出(附图)。

为什么我不能像在 Chrome 和 FireFox 中那样做(例如:按 F12 查看 DOM)?
error screenshot

Note: I'm using MacOs Catalina with Javascript & Python for selenium

最佳答案

这个错误信息...

Safari window

...暗示 Safari 浏览器的 WebDriver对开发人员和自动化开发人员的支持是 关闭 默认情况下。

配置 Safari 以启用 WebDriver 支持

根据 Testing with WebDriver in Safari 中的文档默认情况下,Safari 对开发人员的 WebDriver 支持是关闭的。启用 WebDriver 支持取决于您的操作系统。

  • 在 High Sierra 及更高版本中:
  • 您需要启用一次 safaridriver。
    /usr/bin/safaridriver --enable
    
  • 如果您是从以前的 macOS 版本升级,您可能需要按如下方式使用 sudo:
    sudo /usr/bin/safaridriver --enable 
    
  • 塞拉和更早的:
  • 使开发菜单可用。选择 Safari > Preferences并在 Advanced选项卡,选择 Show Develop menu在菜单栏中。
  • 选择 Develop > Allow Remote Automation .
  • 授权 safaridriver 启动托管本地 Web 服务器的 XPC 服务。要允许这样做,请手动运行 /usr/bin/safaridriver一次并按照身份验证提示进行操作。
  • 关于python-3.x - 使用 selenium 时禁用 Safari 中的自动化警告,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62246240/

    相关文章:

    Python 通用函数调度

    python-3.x - 如何让 "+"通过 python 中的 webbrowser 命令传递?

    RSelenium:查找与 Xpath 的链接

    mysql 自动化

    python - 让python在命令行中运行一个文件,输入一些东西,等待然后再次输入一些东西

    python - 如何使用 python glob.glob() 打印子目录中的文件名

    python - 在代码中兼容地使用字符串和类字节对象以在 Python 2 和 3 中运行

    python - 在 Selenium Python 中执行鼠标操作

    java - 使用 webdriver selenium 处理子菜单项

    c# - SendMessage 模拟右键单击使目标应用程序崩溃