logo elektroda
logo elektroda
X
logo elektroda
REKLAMA
REKLAMA
Adblock/uBlockOrigin/AdGuard mogą powodować znikanie niektórych postów z powodu nowej reguły.

Automatyzacja logowania i akcji na stronie www - wybór języka i bibliotek

goodmaster 07 Paź 2010 21:59 1990 9
REKLAMA
  • #1 8595219
    goodmaster
    Poziom 23  
    Posty: 782
    Pomógł: 4
    Ocena: 38
    Witam, potrzebuję stworzyć program w dowolnym języku programowania, ma za zadanie odpalić daną www poprzez protokół https zalogowanie się do niej, a następnie odpalenie przycisku na stronie. Pozniej znowu loguje sie na innego usera i i odpala przycisk na stronie i tak w kółko ;). Program powinien wczytać bazę danych userów z pliku txt lub z excela. Haslo jest niewazne.

    W jakim języku programowania najlepiej będzie to napisać + jakie bilbioteki trzeba wykorzystać? Czekam na jakieś poważne propozycje i informacje ;-) ludzi, którzy tworzyli programy sieciowe, bo jeszcze nie miałem potrzeby takowych tworzyć.
  • REKLAMA
  • REKLAMA
  • #3 8595693
    goodmaster
    Poziom 23  
    Posty: 782
    Pomógł: 4
    Ocena: 38
    Mógłbym wykorzystać ewentualnie php albo c++, reszty nie znam za dobrze, nie można wykorzystać czegoś łatwiejszego o ile to jest łatwiejsze ;) cURL albo coś pochodnego?
  • REKLAMA
  • #4 8596287
    azra
    Poziom 17  
    Posty: 108
    Pomógł: 26
    Ocena: 2
    I w php i c++ możesz użyć cURL, który o ile wiem obsługuje https.
  • #5 8596392
    arnoldziq
    VIP Zasłużony dla elektroda
    Posty: 5376
    Pomógł: 789
    Ocena: 299
    Możesz to dość łatwo zrobić w każdym języku, który ma połączenie z protokołem HTTP.
    Każde kliknięcie na przycisku generuje wywołanie strony z jakimiś parametrami, które zazwyczaj zawierają dane wpisane w jakiś formularz.
    Takie logowanie to nic innego jak wywołanie strony z odpowiednim parametrem/parametrami. Nie musisz tej strony nawet "widzieć".
    W Delphi, przy pomocy komponentu TWebBrowser, załatwiasz to np. w taki sposób:
    URLText:='http://www.rpsgblist.org/membership.asp?mem='+
             trim(lblRPSNo.caption)+'+&sur=&for=&action=Search';
       try
         web.Navigate(URLtext);
       except
         label3.Caption:='Problem with getting an access to the web page.';
       end;
    
  • REKLAMA
  • #6 8596455
    goodmaster
    Poziom 23  
    Posty: 782
    Pomógł: 4
    Ocena: 38
    Dzięki za odpowiedzi, ale czy istnieje możliwość wpisywania hasła jawnego do formularza logowania + userów? Bo w przeglądarce przesyłane są zaszyfrowane znaki, musiałbym pojedynczo do każdego logowania przechwytywać te znaki? Każdy hash osobno dla innego usera to bardzo pracochłonne i mijałoby się z celem. Potrafiłbyś stworzyć na szybko jakis graficzny programik w delphi żeby logowal się na jakąś stronę https i można wczytać użytkowników z pliku xml, txt albo innego? ;)
  • #7 8596534
    arnoldziq
    VIP Zasłużony dla elektroda
    Posty: 5376
    Pomógł: 789
    Ocena: 299
    To, że w przeglądarce wpisane hasło pojawia się jako ciąg '****', wcale nie oznacza, że hasło jest w jakikolwiek sposób kodowane :)
    Najczęściej jest to po prostu wysyłane jako tekst jawny.
    Użyj Firefox-a i jakiegoś dodatku np. Temper Data. Możesz w tym dodatku podejrzeć przy normalnym logowaniu, jak wygląda pełen parametr wywołania strony.
    Np.
    aby zalogować się bezpośrednio do serwera poczty o2.pl, wystarczy wywołać np. coś takiego :
    http://poczta10.o2.pl/login.html?username=***&password=***&ssl=login

    Zamiast '***', powinny się tam znajdować nazwa użytkownika i hasło.
    Automatyzacja logowania i akcji na stronie www - wybór języka i bibliotek
    Oczywiście, w przypadku o2.pl, sprawa jest dość skomplikowana, bo musisz jeszcze zapisać pliki cookie z numerem swojej sesji. Ale wszystko jest do "przejścia".

    Właśnie taki mechanizm stosują tzw. boty, do "grania" w różne gry internetowe oparte o HTML/PHP itd.
  • #9 8598605
    goodmaster
    Poziom 23  
    Posty: 782
    Pomógł: 4
    Ocena: 38
    Nie nie ma to być jakiś spambot ;) nie bawie się w takie rzeczy, chciałem pomóc koledze z glosowaniem na jego prace ;-) ale widze, ze za duzo zachodu by mnie to kosztowalo heh ;)
  • #10 8659958
    goodmaster
    Poziom 23  
    Posty: 782
    Pomógł: 4
    Ocena: 38
    Kolego, a jak napisać to w php? Żeby zalogowal się np. na pocztę i wylogował, na obojętnie jaką lub jakiś serwis? Masz jakiś skrypcik pod ręką?

Podsumowanie tematu

✨ W dyskusji poruszono temat automatyzacji logowania i interakcji z stronami internetowymi. Użytkownik poszukiwał języka programowania oraz bibliotek do stworzenia programu, który logowałby się na stronach HTTPS, uruchamiałby przyciski oraz wczytywałby dane użytkowników z plików tekstowych lub Excel. Proponowane rozwiązania obejmowały użycie Perla z modułem WWW::Mechanize, Pythona z BeautifulSoup, PHP oraz C++ z cURL. Uczestnicy dyskusji podkreślili, że logowanie można zrealizować poprzez wysyłanie odpowiednich parametrów HTTP, a także zwrócili uwagę na kwestie związane z przesyłaniem haseł. Pojawiły się również wątpliwości dotyczące etyki automatyzacji, jednak użytkownik zapewnił, że nie zamierza tworzyć spambota, a jedynie pomóc koledze.
Wygenerowane przez model językowy.
REKLAMA