如何让firefox还原

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何让firefox还原相关的知识,希望对你有一定的参考价值。

今天早上打开firefox时更新了一下几个附加软件,结果界面变得让我很不爽,怎样能换原到更新前的状态?不要说卸了重装,那样又要一个个装附加软件,很麻烦~我只要恢复原来的状态~
MozBackup不行,因为我原来又没有备份,无法用这个还原。

参考技术A MozBackup是一款专门针对Firefox和Mozilla开发的配置内容备份还原工具,可以轻松搞定书签、Cookies、下载文件列表、扩展程序、地址簿等14项内容的备份和还原!MozBackup的使用很简单,其采用向导的方式来帮助你一步步完成Firefox配置内容的备份或还原。下面以备份Firefox配置为例(还原恢复操作基本类似)!

Step1:选择工作内容(图1):启动软件之后,直接点击“Next”跳过软件欢迎页面后即进入处理方式选择界面,随后在“Operation”区选择“Backup a Profile”,并在浏览器列表中选择“Firefox”。
Step2:选择备份文件保存路径:先选择“Select the profile you want to Backup”处的“Default”,随后点击“Select File”处的“Browser”选择备份文件保存的目标目录以及文件名(默认保存于“我的文档”)。点击“Next”之后,软件将提示你是否要对备份文件设定密码,你可按照自己的需求来选择“是”或“否”。
Step3:选择备份项目:之后就将进入具体的备份项目选择界面。操作很简单,直接在你想要的备份项目之前勾选复选框即可(图2)。完成之后点击“Next”即开始进行备份工作了。
勾选你想要的备份项目
有了MozBackup,再也不用担心重装系统或Firefox之时,需要手动备份或还原参数配置。
参考技术B 貌似不能直接回到过去的某个具体的时间,但在附加组件管理中可以吧所有的都禁用了,然后启用喜欢的,并且卸载没用的,主题也是一样,如果你的扩展不多,直接新建个个人配置文件夹吧,也就相当于重装

如何让 Selenium firefox 驱动只截取浏览过的页面

【中文标题】如何让 Selenium firefox 驱动只截取浏览过的页面【英文标题】:How to make Selenium firefox driver take screenshots of only viewed page 【发布时间】:2016-01-05 17:58:18 【问题描述】:

我正在使用 Java 中的 Selenium 运行一系列自动化 GUI 测试。这些测试经常使用以下方法截取屏幕截图:

    public static void takeScreenshot(String screenshotPathAndName, WebDriver driver) 
        File scrFile = ((TakesScreenshot)driver).getScreenshotAs(OutputType.FILE);
        try 
            FileUtils.copyFile(scrFile, new File(screenshotPathAndName));
         catch(Exception e) 
            e.printStackTrace();
        
    

这在 Chrome 和 IE 中运行良好,但在 Firefox 中,我不断在屏幕截图下获得大片空白。我怀疑空白实际上是页面本身的一部分,但通常在浏览器中隐藏(滚动条在空白之前停止)。我做了一个快速测试

    driver.get("http://***.com/");
    takeScreenshot("D:\\TestRuns\\***.png", driver);

发现使用 Firefox 驱动时,屏幕截图中会捕获整个页面,而使用 Chrome 驱动时,只会捕获浏览器中显示的内容。

有什么方法可以强制 Firefox 驱动程序截取屏幕截图,其中只包含浏览器中实际可以看到的内容(实际用户会看到的内容)?

【问题讨论】:

【参考方案1】:

根据this question 的回答,我能够添加 4 行代码来将图像裁剪为浏览器大小。这确实解决了我的问题,尽管如果可以通过驱动程序解决而不是在截屏后进行裁剪会更好。

public static void takeScreenshot(String screenshotPathAndName, WebDriver driver) 
    File scrFile = ((TakesScreenshot)driver).getScreenshotAs(OutputType.FILE);
    try 

        int height = driver.manage().window().getSize().getHeight();
        BufferedImage img = ImageIO.read(scrFile);
        BufferedImage dest = img.getSubimage(0, 0, img.getWidth(), height);
        ImageIO.write(dest, "png", scrFile);

        FileUtils.copyFile(scrFile, new File(screenshotPathAndName));
     catch(Exception e) 
        e.printStackTrace();
    

【讨论】:

【参考方案2】:

试试这个:

private static void snapshotBrowser(TakesScreenshot driver, String screenSnapshotName, File browserFile) 
        try 

            File scrFile = driver.getScreenshotAs(OutputType.FILE);
            log.info("PNG browser snapshot file name: \"\"", browserFile.toURI().toString());

            FileUtils.deleteQuietly(browserFile);
            FileUtils.moveFile(scrFile, browserFile);
         catch (Exception e) 
            log.error("Could not create browser snapshot: " + screenSnapshotName, e);
        
    

【讨论】:

没用。仍然获得显示整个页面的屏幕截图,而不仅仅是在浏览器中看到的内容。

以上是关于如何让firefox还原的主要内容,如果未能解决你的问题,请参考以下文章

如何让 Firefox 在文件更改时自动刷新?

如何让 window.focus() 在 Firefox 中工作 [重复]

如何让我的 CSS 代码在 Firefox 和 IE 上运行

如何让 Firefox 和 IE 在 flexbox 布局中正确呈现写作模式?

如何让 Firefox 中的 javascript 也能在 IE 中运行

如何让 Firefox 在 Mac OSX 上与 Selenium WebDriver 一起工作