Обыскивал сеть для чего-то вроде firewatir, но для python. Пытаюсь автоматизировать firefox на linux. Какие-либо предложения?






Выбранный язык Firefox - Javascript. Если у вас нет особых требований, требующих Python, я бы посоветовал вам использовать его.
Вы можете попробовать селен.
Посмотрим, может ли саржа вам помочь. Его можно использовать как инструмент командной строки или как библиотеку Python.
Установите Мозлаб в Firefox и включите telnet-сервер, затем откройте сокет.
Я использую Селен RC. Все мои тесты написаны на Python и выполняются с помощью набора тестов.
Одна мелочь заключается в том, что вам нужно либо запускать селен вручную и указывать на него свои тесты, либо запускать селен из набора тестов, который требует небольшого кода. Но это выполнимо.
В целом я очень доволен этим решением.
Мне все еще нужна Java для работы Selenium Server?
Да, поскольку Selenium написан на Java.
Расширение PyXPCOM - одна из возможностей.
Но, глядя на то, что предоставляет firewatir, я должен предложить второе предложение для саржи. Он основан на механизировать, что также может быть полезно в этом контексте.
Mechanize в конечном итоге предоставил мне наибольшую функциональность ... спасибо
просто наткнулся на это и должен сказать, что PyXPCOM выглядит действительно старым и пыльным, так сказать, он как минимум такой же старый, как 2001 год, и его трудно найти много о том, как его использовать, механизация в порядке, но имеет некоторые ограничения, например, не может обрабатывать javascript, а также не иметь возможности автоматически загружать обычные вещи, которые загружаются браузером при загрузке страницы (например, CSS, изображения и т. д.)
Ссылка на надстройку PyXPCOM не работает.
Многие инструменты командной строки не имеют интерпретатора javascript, поэтому не поддерживают функциональность Web 2.0. сок основан на примере PyShell PyXPCOMext. Он предоставляет вам окно оболочки python «внутри» браузера и упрощает доступ как к DOM того, что вы просматриваете, так и к самому окну оболочки (так что вы можете добавлять элементы графического интерфейса как часть вашего сценария автоматизации). Но это новый проект, поэтому, вероятно, он не такой полнофункциональный, как некоторые из вышеперечисленных.
выглядело красиво, но, к сожалению, разработка остановилась, так как последняя версия старше вашего сообщения.
Я бы посоветовал вам использовать Selenium вместо Mechanize / Twill, потому что Mechanize выйдет из строя при обработке Javascript.
Я не думаю, что javascript подойдет для этого, он не может сравниться с python для автоматизации и т. д., Но я полагаю, если бы вам это было абсолютно необходимо, вы могли бы взаимодействовать javascript с вашим скриптом python