Проблемы с установкой MozRepl
Я пытался установить WWW::Mechanize::Firefox через CPAN, и у меня возникли проблемы с установкой зависимости MozRepl. Установка проходит, но все тесты не пройдены, и когда я принудительно устанавливаю его и запускаю свой Perl-скрипт, я сталкиваюсь с ошибкой
Failed to connect to , at /Library/Perl/5.12/MozRepl/RemoteObject.pm line 467.
Так что я удалил MozRepl и посмотрел на тесты я получаю следующие ошибки в журнале:
# Failed test at t/10-plugin-repl-enter.t line 11.
Can't locate object method "repl_enter" via package "MozRepl" at t/10-plugin-repl-enter.t line 12.
...
# Failed test at t/20-plugin-json.t line 16.
Can't locate object method "json" via package "MozRepl" at t/20-plugin-json.t line 17.
# Failed test at t/19-plugin-repl-util-doc_for.t line 14.
Can't locate object method "repl_doc_for" via package "MozRepl" at t/19-plugin-repl-util-doc_for.t line 16.
# Failed test at t/18-plugin-repl-util-help_url_for.t line 14.
Can't locate object method "repl_help_url" via package "MozRepl" at t/18-plugin-repl-util-help_url_for.t line 16.
так далее..
Я работаю на Mac OSX 10.8.4, 4 ГБ ОЗУ 2.5 ГГц, Perl версия 5.12. Кто-нибудь знает, что является причиной этих ошибок?
ОБНОВЛЕНИЕ: я переустановил mozrepl, и теперь я получаю эту ошибку, когда я запускаю свой скрипт:
Failed to connect to , problem connecting to "localhost", port 4242: Connection refused at /Users/thui/perl5/perlbrew/perls/perl-5.16.0/lib/site_perl/5.16.0/MozRepl/Client.pm line 144
1 ответ
Это работает для меня с Perl 5.10 или более поздней версии, последний Firefox (26 на момент написания) и Mozrepl из github.
По команде:
(1) Загрузите MozRepl и соберите файл XPI (расширение Firefox):
git clone git://github.com/bard/mozrepl
cd mozrepl
zip -r ../mozrepl.zip *
cd ..
mv mozrepl.zip mozrepl.xpi
(2) Установите расширение в Firefox с помощью about:addons [Установить из файла].
В Firefox:
(3) Menu
->Tools
->Mozrepl
->Activate On Startup
(4) Menu
->Tools
->Mozrepl
->Start
По команде:
(5) which firefox
Убедитесь, что исполняемый файл firefox (или скрипт-обертка вашей ОС) находится в $PATH
- вы должны получить выход!
(6) cpanm WWW::Mechanize::Firefox
(7) Проверьте это!
На этом этапе, если CPANminus сообщает об отсутствии ошибок, тогда должен работать WWW::Mechanize::Firefox. Первый пример из краткого обзора - хороший тест:
#!/usr/bin/perl
use WWW::Mechanize::Firefox;
my $mech = WWW::Mechanize::Firefox->new();
$mech->get('http://google.com');
Это предполагает, что MozRepl прослушивает порт 4242 (проверьте в Меню-> Инструменты-> Mozrepl-> Изменить порт). Вы также можете изменить порт со стороны Perl; увидеть варианты ->new()
,
(8) cpanm HTML::Display::Common
я нашел это bcat.pl
Из примеров требуется этот модуль, но он не был установлен как зависимость.