【问题标题】:How can I use a Python cgi script to kill the browser that launched it?如何使用 Python cgi 脚本杀死启动它的浏览器?
【发布时间】:2011-08-05 09:43:15
【问题描述】:

我在 MacOs 10.4 中执行此操作。我的网页将一些数据发布到 Python 脚本,我希望脚本通过关闭浏览器来结束。我正在尝试执行此调用

os.system("kill 210")   # where 210, say, is the browser's id number

但这不起作用。在 Apache 错误日志中,我看到以下消息:

kill: (210) - Operation not permitted

大概 Apache 服务器无权终止我启动的进程。有没有办法授予它权限,或者有更好的方法?

【问题讨论】:

  • 如果您可以按照上述方式实现这一点,我会感到惊讶,即使该网络浏览器正在浏览本地主机上的地址。您可以让他们使用 javascript 关闭 页面,但您不能强制他们的浏览器关闭我所知道的。
  • 阿帕奇有能力生成一个applescript吗?我确信它可以关闭浏览器。不过,这似乎是一件很奇怪的事情。
  • @neil:可能,但它会以与我们已经建立的 Apache 服务器相同的用户身份运行,它没有足够的权限来终止相关进程。
  • @neil @mdm 我仍然建议检查。考虑到其预期目的,AppleScript 可能能够轻松提升权限,无论是否合法。

标签: python apache macos cross-browser


【解决方案1】:

你是如何启动你的网络浏览器的?

您应该有第二个脚本可以启动网络浏览器,允许您粘贴数据 - 或自动化整个过程,因为您可以根据需要使用“selenium”,并且此脚本在关闭浏览器时不会出现问题。

【讨论】:

  • 是的,这种方法奏效了。新脚本打开浏览器,然后反复休眠,直到它发现一个文件(由我的 Python 脚本创建),表明网页的工作已经完成。最后,它可以使用'kill'来关闭浏览器。
猜你喜欢
  • 1970-01-01
  • 2022-11-12
  • 2017-03-31
  • 1970-01-01
  • 2012-11-09
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2022-10-21
相关资源
最近更新 更多