Skocz do zawartości
  • 👋 Witaj na MPCForum!

    Przeglądasz forum jako gość, co oznacza, że wiele świetnych funkcji jest jeszcze przed Tobą! 😎

    • Pełny dostęp do działów i ukrytych treści
    • Możliwość pisania i odpowiadania w tematach
    • System prywatnych wiadomości
    • Zbieranie reputacji i rozwijanie swojego profilu
    • Członkostwo w jednej z największych społeczności graczy

    👉 Dołączenie zajmie Ci mniej niż minutę – a zyskasz znacznie więcej!

    Zarejestruj się teraz

[TuT] IE.au3 - Podstawy


Phoenix_PL

Rekomendowane odpowiedzi

Opublikowano

Witam

:)

Napiszę tutaj conieco o funkcjach z biblioteki IE.au3, które przydadzą nam się do tworzenia botów czy innego syfu tego typu :P

 

Zapraszam do lektury :)

 

1. Obsługa IE (podstawowe podstawy)

 

No cóż, przydałoby się zacząć od podstaw jakimi są odpalanie i zamykanie IE oraz proste operacje.

 

Przejdę od razu do rzeczy.

 

Po pierwsze - trzeba dołączyć bibliotekę do naszego skryptu, żeby móc cokolwiek robić. Czyli odpalamy SciTE, tworzymy i zapisujemy gdzieś nowy plik i wpisujemy w pierwszą linijkę

#include <IE.au3>

I już możemy swobodnie korzystać z funkcji do obsługi Internet Explorera.

 

Do uruchomienia IE i podczepienia go pod nasz skrypt służą dwie funkcje

Pierwsza pozwala na uruchomienie przeglądarki w jej 'ojczystym' oknie, dzięki drugiej możemy to okno umieścić w naszym GUI. Obie rzeczy opiszę i wyjaśnię :)

 

Zaczniemy od pierwszej metody - do odpalenia w 'swoistym' oknie służy funkcja _IECreate

$oIE = _IECreate($adres, $podpiecie, $widocznosc, $czekaj, $focus)

Już wyjaśniam co, jak, gdzie i dlaczego.

 

Parametry:

$adres - Adres startowy przeglądarki. Na przykład www.google.pl

$podpiecie - Wartość bool (True/False). Jeśli True to stworzone przez nas 'okno' zostanie podpięte do istniejącego już (chyba jako karta, nie sprawdzałem tego)

$widocznosc - Znowu bool, jeśli True to okno jest widoczne. Jednakże to możemy zmienić podczas działania programu.

$czekaj - bool. Jeśli True, to skrypt będzie czekał dopóki strona startowa się nie załaduje.

$focus - i kolejny bool. Jeśli True to skrypt uruchomi IE na wierzchu (nie sprawdzałem...)

 

I jeszcze jedno - dla niezaznajomionych z typami danych w informatyce

 

Bool (Boolean) to typ danych mający tylko dwie wartości - True (prawda) oraz False (nieprawda). Wartość True najczęściej mówi że operacja się powiodła (jeśli jest zwracana przez funkcję na przykład) albo że warunek jest prawdziwy (jak w powyższej funkcji). Wartość False zupełnie na odwrót.

 

Wartości te możemy zastąpić liczbami dodatnimi dla True oraz ujemnymi i 0 dla False.

Jednak zwyczajowo 1 = True, 0 = False.

 

 

I jeszcze jedno - $oIE to uchwyt do naszego okienka. Jeśli chcemy mieć nad nim kontrolę, musimy (tak jak przy tworzeniu kontrolek GUI) funkcję _IECreate 'podpiąć' pod jakąkolwiek zmienną (której będziemy używać potem jako uchwytu).

 

Oczywiście możemy uruchamiać kilka(dziesiąt) przeglądarek naraz. Uważajmy jednak żeby za mocno nie obciążyć procesora.

 

Czas na drugą metodę, z możliwością podpięcia przeglądarki pod GUI

Służy do tego funkcja _IECreateEmbedded

$oIE = _IECreateEmbedded()

 

Okej, ale jak umieścić to w GUI?

Służy do tego funkcja GUICtrlCreateObj

$obj = GUICtrlCreateObj($uchwyt, lewo, góra, wysokosc, szerokosc)

Jako $uchwyt podajemy zmienną pod którą jest 'podpięta' funkcja _IECreateEmbedded.

Cała reszta to koordy kontrolki.

 

Okej, wiemy jak stworzyć. Teraz czas przejść do obsługi.

 

2. Sterowanie przeglądarką

 

Tutaj będzie krótko, bo większą część tego rozdziału opiszę w drugiej części tutoriala.

 

Do takiej podstawowej obsługi IE będą nam tak naprawdę potrzebne dwie funkcje. Oto one

 

_IENavigate($objekt, $adres, $czekaj)
_IEAction($objekt, $akcja)

 

Okej, teraz wyjaśnienie.

 

_IENavigate służy do przejścia na podany adres strony internetowej.

Jako $objekt podajemy uchwyt do obiektu IE stworzonego przez _IECreate lub _IECreateEmbedded

$adres to adres strony na którą chcemy przejść, a $czekaj to wartość bool mówiąca o tym czy program ma czekać na załadowanie strony.

 

UWAGA: Jeśli używamy tego drugiego, podajemy uchwyt od _IECreateEmbedded a nie od GUICtrlCreateObj!

_IENavigate jest wymagane przy tej drugiej metodzie, z tego powodu że oryginalnie IE jest otwarte na about:blank (pusta strona)

 

Drugą funkcją (_IEAction) możemy zrobić jakieś 30-40% rzeczy jakie nam będą potrzebne przy robieniu jakiegoś programiku.

Ta funkcja służy nie tylko do obsługi IE ale także obiektów na stronie (więcej o tym w drugim rozdziale tuta).

Jako $objekt podajemy uchwyt do obiektu (IE albo ze strony), a jako $akcja podajemy akcję (tekst).

A w tym spoilerze macie spolszczoną listę wszystkich akcji z Helpa

 

Akcja - Opis - Na jakich obiektach możemy użyć akcji

"back" - Przechodzi na poprzednią stronę w historii przeglądania - tylko IE.
"blur" - Podany element traci 'uwagę' (uwagę zwracamy jak np. klikamy na textboxa na stronie - wtedy zmienia się obramowanie i możemy w nim pisać), ale następny obiekt na stronie nie dostaje uwagi - tylko obiekty na stronie
"click" - Symuluje kliknięcie w dany objekt - tylko obiekty na stronie
"copy" - Kopiuje zaznaczony tekst do schowka - tylko obiekty na stronie 
"cut" - Wycina zaznaczony tekst do schowka - tylko obiekty na stronie 
"delete" - Usuwa aktualne zaznaczenie - tylko obiekty na stronie
"disable" - Dezaktywuje aktualny element - tylko obiekty na stronie
"enable" - Aktywuje dany element  - tylko obiekty na stronie 
"focus" - 'zwraca uwagę' na dany element - IE oraz obiekty na stronie
"forward" - Przechodzi na następną stronę w historii przeglądania - tylko IE
"home" - Przechodzi na stronę domową przeglądarki - tylko IE
"invisible" - Ustawia dany obiekt jako niewidoczny - IE oraz obiekty na stronie
"paste" - Wkleja tekst do kontrolki - tylko obiekty na stronie 
"print" - Otwiera okno drukowania (w celu wydrukowania danej strony) - tylko IE 
"printdefault" - Drukuje bezpośrednio na domyślnej drukarce - tylko IE
"quit" - Zamyka obiekt - IE oraz obiekty na stronie 
"refresh" - Odświeża dany obiekt - IE oraz obiekty na stronie
"saveas" - Otwiera okienko zapisu aktualnej stroni - tylko IE
"search" - Nawiguje do wyszukiwarki - tylko IE
"selectall" - Zaznacza cały tekst - IE oraz obiekty na stronie
"stop" - Zatrzymuje WSZYSTKIE akcje na stronie (download, animacje, muzykę w tle) - tylko IE
"unselect" - Czyści zaznaczenie (odznacza cały tekst) - IE oraz kontrolki na stronie 
"visible" - Ustawia dany obiekt jako widoczny - IE oraz kontrolki na stronie

 

 

I na koniec jeszcze dopisek dla bardziej zaawansowanych - Obiektem stworzonym poprzez _IECreate/_IECreateEmbedded można sterować tak jak zwykłym obiektem w AutoIT - tak jak w językach z rodziny C.

 

Czyli przykładowo, zamiast

_IENavigate($oIE, "google.pl")

możemy zrobić tak:

$oIE.Navigate("google.pl")

 

Lista funkcji które możemy umieścić po kropce znajduje się na MSDN pod tym adresem:

Link do MSDN

(nie jestem do końca pewien czy to tutaj, radzę też pogrzebać w google)

 

Zakończenie części I

 

To by było na tyle w tej części.

W następnej opiszę dalsze tajniki obsługi IE.au3, czyli na przykład tworzenie uchwytów do obiektów na stronie, wyciąganie pliku HTML aktualnej strony oraz tworzenie na przykład autologinu.

 

Jeśli natraficie na jakieś nieścisłości oraz błędy w tutku - piszcie, poprawię najszybciej jak się da.

 

APO: -5% plx :<

846331404756772371599.jpeg
  • 3 tygodnie później...
  • 4 tygodnie później...
Opublikowano

Mam na dzieje że ten post nie będzie górnikiem ;x

 

Mam pytanie, z grze gangsters przez przeglądarkę są np. buttony wyglądające tak samo i na nich jest napis Trenuj, dlaczego jak badam to niczym się nie różnią? Nie mam jak sobie objektu wyciagnac, uzywam Firefoxa najnowszego.

 

Wszędzie jest takie coś.

input.button {
   color: rgb(255, 255, 255);
   cursor: pointer;
   font-size: 12px;
   font-family: Arial,Verdana;
   background-image: url("../images/elements/button_bg.png");
   background-repeat: no-repeat;
   background-color: rgb(29, 29, 29);
   width: 104px;
   height: 25px;
   border: 0px none;
   margin: 2px;
}

Wszystkie poradniki w "O mnie" i na moim profilu YouTube.


51dd70965ae71.png


!!!HIT!!! -- Pełno klientów na DT nawet na najstarszym kompie bez zamuły!


!!!HIT!!! -- Nowa modyfikacja do Metina FastKill


World of Metin2


  • 1 miesiąc temu...
Opublikowano

Tutorial super, tylko że nie chce u mnie działać. Jeżeli mógłbyś pododawać na końcach jak skrypt wygląda to bym był bardzo wdzięczny.

 

Albo proszę o wyjaśnienie: Chodzi mi o to, aby program uruchomił przeglądarkę (nieaktywną), wszedł na określone strony www, potem przerwa w skrypcie :) i aby klikał określone miejsca.

 

Aha i aby przeglądarka miała podane wymiary

Tysiące lat wojen, ani jednego dnia pokoju,

pytam czy to skończy się.

 

Zegarek BB

Zarchiwizowany

Ten temat przebywa obecnie w archiwum. Dodawanie nowych odpowiedzi zostało zablokowane.

×
×
  • Dodaj nową pozycję...