2009-06-19 20 views
5

Próbowałem Pamie biblioteki automatyzacji przeglądarki dla przeglądarki Internet Explorer. Łączy się za pomocą IE COM, całkiem zgrabny:Automatyzacja przeglądarki: Python + Firefox za pomocą PyXPCOM

import PAM30 
ie = PAM30.PAMIE("http://user-agent-string.info/") 
ie.clickButton("Analyze my UA") 

Teraz chciałbym zrobić to samo przy użyciu PyXPCOM o podobnej elastyczności w Firefoksie. Jak mogę to zrobić? Czy możesz podać przykładowy kod?

zmiana: proszę tylko pyxpcom

+3

Chill dude. Jest wielu ludzi, którzy zaczynają pytanie, zakładając, że znają już odpowiedź. Czasami najlepszym rozwiązaniem nie jest to, na którym się koncentrują. Ponieważ nie wspominasz o tym, DLACZEGO potrzebujesz PyXPCOM w porównaniu z wieloma innymi opcjami automatyzacji, nie szkodzi to dostarczać alternatyw, których być może nie brałeś pod uwagę. Prędzej czy później ktoś z doświadczeniem PyXPCOM da ci odpowiedź, której potrzebujesz, jeśli nie, to inne odpowiedzi nie mają znaczenia. Co najmniej mogą rozwiązać problem dla innych użytkowników, którzy natkną się na twoje pytanie szukając "automatyzacji przeglądarki". – SpliFF

Odpowiedz

10

Użyłem webdriver z firefox. Byłem z tego bardzo zadowolony.

Co do przykładów kodu, this pozwoli Ci zacząć.

2

Jeśli testowanie webapp i chcę napisać Python to zrobić, sprawdź Selenium RC, dzięki czemu można korzystać z tego samego API dla wszystkich przeglądarek.

4

Moje zrozumienie PyXPCOM polega na tym, że umożliwia tworzenie i uzyskiwanie dostępu do komponentów XPCOM, a nie kontrolowanie istniejących. Może nie być w stanie to zrobić za pomocą PyXPCOM w ogóle, za Mark Hammond, pierwotnego autora:

It simply isn't what XPCOM is trying to do. I'm not sure if Mozilla/Firefox now has or is developing a COM or any other "automation" mechanism.

oraz:

If by "automating", you mean "controlling Mozilla via a remote process via xpcom", then as far as I know, that is not possible

You może zamiast tego rzucić okiem na poprzednio sugerowany projekt Webdriver, Windmill lub MozMill, oba obsługują automatyzację Firefox/Gecko/XULRunner za pośrednictwem Pythona.

Powiązane problemy