![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 141 Pomógł: 0 Dołączył: 9.10.2015 Ostrzeżenie: (0%) ![]() ![]() |
Witajcie, chciałbym pobierać dane z jednej strony przy użyciu PHP Simple HTML DOM Parser. Niestety strona z której chce pobrać dane wymaga zalogowania się. I pytanie do Was, jak zrobić, by się skrypt automatycznie logował przy użyciu wpisanych do niego danych do logowania?
Pozdrawiam. @edit Tam gdzie chcę się zalogować, to jest forum IPB 3.x i logowanie jest jako POST Ten post edytował lekosm2 5.08.2016, 09:20:30 |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 45 Pomógł: 1 Dołączył: 27.10.2015 Ostrzeżenie: (0%) ![]() ![]() |
|
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 141 Pomógł: 0 Dołączył: 9.10.2015 Ostrzeżenie: (0%) ![]() ![]() |
Chciałbym zrobić dokładnie to samo, co kolega w tym temacie Temat: cURL i logowanie na IPB
Niestety on tu nie wstawił całego kodu, więc nie wiem gdzie podać login i hasło.. Przedstawi mi ktoś pełny przykład jak to powinno wyglądać? |
|
|
![]()
Post
#4
|
|
![]() Grupa: Zarejestrowani Postów: 821 Pomógł: 111 Dołączył: 11.09.2006 Skąd: Biała Podlaska Ostrzeżenie: (0%) ![]() ![]() |
Użyj sobie klasy np. tej:
https://github.com/php-curl-class/php-curl-class Na stronie nawet masz przykład jak się logować. -------------------- |
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 141 Pomógł: 0 Dołączył: 9.10.2015 Ostrzeżenie: (0%) ![]() ![]() |
Da się w ogóle tą class'e użyć na zwykłym hostingu www?
Pomoże mi ktoś z tym zwykłym cURL jak się zalogować? :/ Ten post edytował lekosm2 7.08.2016, 08:11:46 |
|
|
![]()
Post
#6
|
|
Grupa: Zarejestrowani Postów: 6 380 Pomógł: 1116 Dołączył: 30.08.2006 Ostrzeżenie: (0%) ![]() ![]() |
Przecież to jest tylko nakładka. Jedyne co wymaga to rozszerzenia curl które i tak musisz mieć.
Pewnie problemem twoim jest to, że nie wiesz jak używać composer. -------------------- |
|
|
![]()
Post
#7
|
|
![]() Grupa: Zarejestrowani Postów: 821 Pomógł: 111 Dołączył: 11.09.2006 Skąd: Biała Podlaska Ostrzeżenie: (0%) ![]() ![]() |
Przecież to jest tylko nakładka. Jedyne co wymaga to rozszerzenia curl które i tak musisz mieć. Pewnie problemem twoim jest to, że nie wiesz jak używać composer. Tak to nakładka, ale wg mnie bardzo dobra której sam używam. Ograniczona chyba do minimum ![]() -------------------- |
|
|
![]()
Post
#8
|
|
Grupa: Zarejestrowani Postów: 141 Pomógł: 0 Dołączył: 9.10.2015 Ostrzeżenie: (0%) ![]() ![]() |
To powiecie mi w jaki sposób to zrobić z tym php-curl-class?
Niby są tam przykłady, ale za cholerę nie umiem ich użyć. ![]() |
|
|
![]()
Post
#9
|
|
![]() Grupa: Zarejestrowani Postów: 821 Pomógł: 111 Dołączył: 11.09.2006 Skąd: Biała Podlaska Ostrzeżenie: (0%) ![]() ![]() |
To powiecie mi w jaki sposób to zrobić z tym php-curl-class? Niby są tam przykłady, ale za cholerę nie umiem ich użyć. ![]() Patrzysz jakie dane przeglądarka wysyła do logowania i je wpisujesz analogicznie:
-------------------- |
|
|
![]()
Post
#10
|
|
Grupa: Zarejestrowani Postów: 1 240 Pomógł: 278 Dołączył: 11.03.2008 Ostrzeżenie: (0%) ![]() ![]() |
1. Wchodzisz na stronę z logowaniem z poziomu przeglądarki
2. Otwierasz zakładkę sieć/network z devtools 3. Wpisujesz dane, logujesz się i szukasz żądania odpowiedzalnego za logowanie (prawdopodobnie POST np. [POST] /login) 4. Kopiujesz żądanie do schowka (kopiuj jako cURL, copy as cURL) 5. Przepisujesz żądanie na cURL w PHP (Google Ci podopowie jak ustawić wszystkie opcje) albo uruchamiasz je np. za pomocą funkcji exec. Pamiętaj o ustawieniu pliku z cookies w cURL tak aby skrypt zapamiętał Twoją sesje, potem jak chcesz wykonać jakieś akcje na stronie wczytujesz ten plik cookies (tam jest prawdopodobnie ID sesji użytkownika na którego się zalogowałeś). Pamiętaj też o tym, że taka sesja nie trwa wiecznie i czasami podczas "chodzenia" po stronie zostaniesz wylogowany - wtedy musisz od nowa wykonać skrypt który do pliku z cookies zapisze nowe ID sesji. -------------------- |
|
|
![]()
Post
#11
|
|
Grupa: Zarejestrowani Postów: 141 Pomógł: 0 Dołączył: 9.10.2015 Ostrzeżenie: (0%) ![]() ![]() |
|
|
|
![]()
Post
#12
|
|
![]() Grupa: Zarejestrowani Postów: 821 Pomógł: 111 Dołączył: 11.09.2006 Skąd: Biała Podlaska Ostrzeżenie: (0%) ![]() ![]() |
Jeśli instalowałeś composerem to vendor/autoload.php
-------------------- |
|
|
![]()
Post
#13
|
|
Grupa: Zarejestrowani Postów: 141 Pomógł: 0 Dołączył: 9.10.2015 Ostrzeżenie: (0%) ![]() ![]() |
Znalazłem to https://github.com/shuber/curl i tego użyłem. Tylko teraz jest problem, jak zrobić, że gdy się zaloguję to skrypt nie będzie ponownie się logował tylko wyświetli zawartość strony.
Czyli zamiast $response = $curl->post to $response = $curl->get Potrzebuję jakiś warunek, który to sprawdzi, czy sesja w cookie jest ważna. Ten post edytował lekosm2 13.08.2016, 11:55:32 |
|
|
![]() ![]() |
![]() |
Aktualny czas: 21.08.2025 - 16:11 |