Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Logowanie na stronę Orange i odczytywanie konkretnych informacji
Forum PHP.pl > Forum > Gotowe rozwiązania
kowi87
Witam, czy mógłby mi ktoś pomóc w stworzeniu skryptu?
Potrzebuję go do projektu pisanego w innym języku, a niestety nie władam php.
Chodzi mi o skrypt którego zadaniem będzie zalogowanie się do serwisu Orange.pl, odczytaniu ilości smsów pozostałych do wysłania za pośrednictwem tej strony, oraz wysłania wiadomości o konkretnej treści na zadany numer. Warunki pomiędzy kolejnymi krokami już jakoś sobie zmajstruję, jednak samych konkretów w tym języku nie dam rady.
smile.gif
!*!
curl A jeszcze szybciej to zakupienie API orange i masz pewność że nic się nie zmieni.
kowi87
Właśnie ogarniam curl'a. A tego API nie mogłem namierzyć; trafiłem jedynie na to na ich francuskojęzycznej stronie.
Mniej więcej wiem jak zrobić w curl'u logowanie na strone, jak jednak mam odczytać ilość pozostałych smsów do wysłania? Nie potrafię programowi kazać namierzyć konkretną wartość i ją odczytać. Naprawdę byłbym wdzięczny za naprowadzenie mnie na właściwy trop.
!*!
Polski oddział nie ma upublicznionego API, jest tylko powiązany z tym api.orange.com hmm nie bawię sie curlem, ale obstawiam że musisz pobrać źródło strony (file-get-contents) i to z niego wyłuskać ilość smsów jakie pozostało. (co jest trochę chybione, bo na stronach orange często zachodzą zmiany w kodzie).

Skontaktuj się też z nimi przez maila, swego czasu wyjaśnili mi kilka rzeczy odnośnie wysyłania smsów od siebie, to było jeszcze przed oficjalnymi bramkami.
kowi87
Jak z użyciem cURL, dla przykładu "wyciągnąć" informację na temat ceny produktu z danej strony?:
http://www.komputronik.pl/product/109701/S...s_275_MB-s.html

Wciąż niestety nie potrafię dojść do tego.
!*!
Tak jak napisałem wyżej. http://forum.php.pl/index.php?showtopic=41...mp;#entry227832

Wchodzisz (curl) > pobierasz źródło strony (file-get-contents) > obrabiasz to źródło jakimś preg_* i wyświetlasz zawartość danego diva z tego źródła.
kowi87
Póki co ten cały cURL to dla mnie nadal czarna magia, ale postaram się wyczarować z tego użyteczny skrypcik wink.gif
Navyman
CURL jest banalny. Wszystko masz w przykładzie w manualu.

  1. $curl = curl_init();
  2. curl_setopt($tuCurl, CURLOPT_URL, "http://www.php.pl");
  3. curl_setopt($tuCurl, CURLOPT_HEADER, 0);
  4. curl_setopt($tuCurl, CURLOPT_RETURNTRANSFER, 1);
  5. $exec = curl_exec($tuCurl);
  6. print_r($exec);


Spróbuj wkleić do pustego pliku i zobacz co się stanie. Spróbuj też zamieniać 0 na 1 i odwrotnie w CURLOPT_HEADER oraz CURLOPT_RETURNTRANSFER. Obserwuj zmiany.
!*!
Znalazłem http://code.google.com/p/phpsms-pl/
Kod klasy nie zachwyca, powiedziałbym że jest nawet marny, ale działa. Tzn. trzeba w zmiennych ustawić NOWE linki do strony w orange, ale to jest dość banalne.

edit:

Powyższa klasa działa tylko na kontach zarejestrowanych numerem orange. Te darmowe (10 smsów) wykładają się na tokenie.
kowi87
!*! dzięki, zabieram się za sprawdzenie tego kodu smile.gif

Tak jak napisałeś, skrypt ten miał pewne rzeczy do poprawienia, jednak mimo starań nie dałem mu drugiego życia. Natomiast znalazłem inny skrypt (również trochę wiekowy), w którym poprawiłem jedną linijkę oraz trochę go przerobiłem dostosowując do własnych potrzeb smile.gif
Link gdzieś mi przepadł, jednak wstawię go jak tylko go odnajdę smile.gif
!*!
W tym skrypcie co podałem też było trzeba zmienić tylko 1 linijke

  1. $token = $xpath->evaluate('//input[@name="/amg/ptk/map/messagebox/formhandlers/MessageFormHandler.token"]')->item(0)->getAttribute('value');

na
  1. $token = $xpath->evaluate('//input[@name="/amg/ptk/map/messagebox/formhandlers/MessageFormHandler.captcha"]')->item(0)->getAttribute('value');
kowi87
Wybaczcie odkopanie kotleta, ale lepsze to, niż zakładanie kolejnego tematu.
Po długim czasie znalazłem ten zakurzony skrypt siedząc wieczorem, w piątek po pracy, w wynajmowanym w UK pokoju wink.gif
Zmieniłem to, o czym napisałeś powyżej jednak nie wiem, czy to po prostu już teraz nie działa, a było sprawne kiedy odpisywałeś.
Rzuć proszę na to okiem jeśli znajdziesz pozwalającą na to chwilkę.
Pozdrawiam!
!*!
Sposób wysyłania sms przez orange.pl się nie zmienił. Zmieniły się tylko formularze i nazwy pól/linków które trzeba poprawić, tak jak wcześniej. Nie mam teraz jak tego sprawdzić czy powyższy skrypt ze zmianami działa, ale na 90% tak.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.