The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.

NAME

WWW::Mechanize::Firefox::FAQ - Frequently Asked Questions on WWW::Mechanize::Firefox

Firefox

How Dependent On The Firefox Version Is The Module?

The module itself should work with any version of Firefox starting from version 2.0. Depending on how deep your Perl code interacts with the application structure of Firefox, you will or will not encounter version specific problems.

If you are only using WWW::Mechanize::Firefox to access the DOM of web pages, you will not notice any version dependencies.

If you use WWW::Mechanize::Firefox to modify the behaviour of Firefox itself, for example by changing settings through Perl code, you will likely be affected by reorganizations of the application structure.

Do I Need An X Session To Run Firefox?

Yes.

If you run a unixish operating system, like OSX or Ubuntu or some other Linux distribution, then Firefox will connect to your X server and display a window there. If you do not want Firefox to actually display on your monitor, many people have had success by running Firefox on another X server separate from the main X server, like Xvfb.

Personally, I would prefer to have a "headless Firefox" that does not need a windowing environment. So far, I am unaware of this actually existing.

How do I use a separate instance of Firefox?

The easiest way is to install a "portable" version (or two) of Firefox. This instance will not pollute your main profile and can use separate add-ons and settings. Use the following code to launch and connect to your separate instance:

    my $instance_port = 4243; # 4242 is likely occupied by your main Firefox instance
    
    $ff = Firefox::Application->new(
        autodie => 0,
        #log => [qw[debug]],
        
        launch => ['c:/Path/to/portable/FirefoxPortable.exe',
                   '-P', "ProfileName",
                   '-repl', $instance_port
                  ],
        repl => "localhost:$instance_port",
    );

Other Browsers

Is There WWW::Mechanize::Firefox for Internet Explorer?

No.

If you want to automate Internet Explorer, there is Win32::IE::Mechanize. This module is not API compatible and does not let you conveniently get at the DOM methods.

Is There WWW::Mechanize::Firefox for Google Chrome?

There is a plugin called "chromerepl" for Google Chrome. This claims to be what mozrepl is for Firefox. The problem is that the Chrome plugin does not download, so I cannot tell you whether it would work.

In principle, it should be possible to write a similar module, WWW::Mechanize::Chrome (or maybe WWW::Mechanize::Chromatic) once the plugin is proven to work. The deeper interaction with the application won't work immediately because Chrome and Firefox still have a different application structure.

SUPPORT AND BUG REPORTS

Where Can I Ask For Help?

If you encounter problems with a website or want feedback on how to approach extracting data from a website, please post your question on http://perlmonks.org. Many competent people and I read this site and will answer your questions.

You do not need to sign up there. You can just go to http://perlmonks.org/?node=SoPW and post your question directly.

I do not monitor other forums, so Perlmonks is the best site to get answers about WWW::Mechanize::Firefox.

Where Can I Report Bugs?

Please use the CPAN RT queue to report and review bugs:

https://rt.cpan.org/dist/www-mechanize-firefox

or send a mail with your bug report to www-mechanize-firefox-Bugs@rt.cpan.org

Please do make sure that you include a small, self-contained program that reproduces the problem and shows what you expect to happen and what happens instead. This makes it much easier for me to help you better in resolving the problem.

AUTHOR

Max Maischein corion@cpan.org

COPYRIGHT

Copyright 2010-2014 by Max Maischein corion@cpan.org.

All Rights Reserved. This module is free software. It may be used, redistributed and/or modified under the same terms as Perl itself.