外部程序如何与浏览器通信?希望这对其他人有一些用处:我列出了一些我见过或尝试过的选项,但未能成功。如果您知道其他人,请发布它们。
- 如果是 Mac,请使用 AppleScript(信息/解决方案在q.263741,试试这个搜索)
- 为 Firefox ( iMacros ?, q.410411 )、Chrome (?)使用或创建扩展
- 使用WebBrowser 控件来托管 IE 实例(一些技巧在q.1143187)
- 如果您拥有该站点,则可以使用后台 ajax 脚本来完成
我的问题:如何在不修改浏览器的情况下从外部 Windows 应用程序获取当前前台浏览器的(Chrome,特别是)URL 和引荐来源网址?
我尝试使用 User32 的 GetWindowText,它可以获取标题(使用 jNative for Java)。这经常让我猜到服务器。可以编写一个本地代理来将标题映射到 URL,但这需要很多工作。我已经编写了一个 FireFox 扩展来使用这些信息来装配窗口标题,但是它已经过时了,无论如何我现在都需要这个用于 Chrome。我不想在浏览器中添加垃圾,除非广泛有用。也许我可以为 windows 上的 chrome 提交一个类似 applescript 的 api 的功能请求。AHK Window Info 1.7设法在可见/隐藏文本下抓取 URL(但不是引用者),但我不知道如何移植它使用的代码。
(FF/C# 的一些信息在q.990409和这里,一些 IE 信息在q.823755(重定向到q.352236)。在q.1107978没有信息。忽略这个:相关问题:如何使用宏控制 firefox ?如何获取浏览器信息?如何获取当前浏览器URL?如何从外部应用获取chrome的当前URL?)
想法、代码示例、指向潜在相关问题的指针以及我的具体问题的答案都值得赞赏。