2009-06-22 29 views
9

是否可以从我的程序中访问Firefox信息?具体而言,我需要阅读活动选项卡中打开的网站的URL。是这样的可能吗?Firefox api - 从我的程序访问

我想我可以写扩展,让我做这样的事情,但我想知道这是否是更多钞票一些FF API ...

+0

有趣的问题。我很想知道这个答案。我从来没有听说过可以从应用程序外部访问的API,但是一些SO成员知识面更广。 – 2009-06-22 02:42:37

回答

0

我建议在寻找免费的在线图书Dive Into Greasemonkeÿ 。有了它,您将能够编写一个GM脚本,您可以将其应用于浏览器中的所有页面。这将是开始为Firefox开发的无痛方式。

或者,查看Firefox Extension development的页面。

另一种选择可能是创建bookmarklet。为了得到当前的URL做:

javascript:(alert(window.location.href)); 
+0

感谢您的回答! 我知道的Greasemonkey,和我写了一些剧本,但我需要从我的应用程序,在Firefox中没有这样的访问。如果您认为从内部FF读取URL,然后将它发送到我的程序,这是一个解决方案,但我想直接读取它,如果它是可能的... – 2009-06-22 02:48:16

+0

我不知道是否会有询问Firefox应用程序的机制从操作系统级别。 – artlung 2009-06-24 16:03:15

0

我不知道Firefox的API,但你可以写一个AutoHotKey Script切换到Firefox,按CTRL + L(给集中到地址栏),然后CTRL + C获取剪贴板上的数据。有点混乱,但它可以工作,这取决于你的情况。

0

要回答你的实际问题:是的,这是可能的 - 因为RescueTime这样做。它不需要插件。至于隐含的问题如何 - 害怕我不知道。

3

也许WebDriver会帮助你,特别是如果你是脚本用户操作。一旦你安装了它,你可以这样做:

WebDriver driver = new FirefoxDriver(); 
driver.get("http://yoururl.com"); 

Firefox现在将在给定的URL打开。然后,您可以使用像findElement()这样的方法来抓取表示网页上元素(按钮,文本区域等)的WebElement实例。一旦你有了WebElement,你可以阅读它的文本,点击它,发送关键事件,无论如何。

相关问题