Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> udawanie przeglądarki?
bulczas
post 21.04.2006, 12:11:40
Post #1





Grupa: Zarejestrowani
Postów: 2
Pomógł: 0
Dołączył: 1.10.2005

Ostrzeżenie: (0%)
-----


witam,
czy jest możliwość żeby skrypt udawał przeglądarke, wczytywał strone o określonej porze (danej godzinie) i klikał na link na owej stronie?

pzdr
Go to the top of the page
+Quote Post
LBO
post 21.04.2006, 12:20:26
Post #2





Grupa: Zarejestrowani
Postów: 1 415
Pomógł: 117
Dołączył: 7.09.2005
Skąd: Warszawa

Ostrzeżenie: (0%)
-----


Przyda Ci się cURL" title="Zobacz w manualu php" target="_manual i szukaj CURLOPT_USERAGENT
Go to the top of the page
+Quote Post
no_face
post 26.07.2006, 13:52:02
Post #3





Grupa: Zarejestrowani
Postów: 346
Pomógł: 23
Dołączył: 28.11.2004

Ostrzeżenie: (0%)
-----


Z gory przepraszam za odswierzenie tematu, ale po co tworzyc nowy jak jest ich juz 4.

Chcialbym sie dowiedziec czy idzie w 100% udawac przegladarke uzywajac funkcji curl, dzialajac na tym samy ip (np stawiajac sobie serverek na kompie i z niego dzialac). Czy wystarczy przekazac CURLOPT_USERAGENT, czy jednak jest potrzebny caly zestaw zmiennych, prosze mi troszeczke to zobrazowac.
Go to the top of the page
+Quote Post
LBO
post 26.07.2006, 14:04:40
Post #4





Grupa: Zarejestrowani
Postów: 1 415
Pomógł: 117
Dołączył: 7.09.2005
Skąd: Warszawa

Ostrzeżenie: (0%)
-----


Wszystko mozna... cała sieć opiera sie na nagłówkach, a ich obsługa jest całkiem prosta...

edit:
zmonitoruj kiedys, jakie nagłówki wysyła np Firefox (są do tego narzędzia) i wszystko będziesz wiedział.

Ten post edytował LBO 26.07.2006, 14:05:42
Go to the top of the page
+Quote Post
Vogel
post 26.07.2006, 15:02:39
Post #5





Grupa: Zarejestrowani
Postów: 402
Pomógł: 0
Dołączył: 20.01.2003

Ostrzeżenie: (0%)
-----


Cytat(no_face @ 26.07.2006, 14:52 ) *
Z gory przepraszam za odswierzenie tematu, ale po co tworzyc nowy jak jest ich juz 4.

Chcialbym sie dowiedziec czy idzie w 100% udawac przegladarke uzywajac funkcji curl, dzialajac na tym samy ip (np stawiajac sobie serverek na kompie i z niego dzialac). Czy wystarczy przekazac CURLOPT_USERAGENT, czy jednak jest potrzebny caly zestaw zmiennych, prosze mi troszeczke to zobrazowac.


zerknij co wysyla twa przegladarka i zrob to samo:
http://pgl.yoyo.org/http/browser-headers.php (tylko uwazaj na kompresje gzip w Accept-Encoding ;D bo mozesz sie zdziwic)


--------------------
Go to the top of the page
+Quote Post
no_face
post 26.07.2006, 22:28:56
Post #6





Grupa: Zarejestrowani
Postów: 346
Pomógł: 23
Dołączył: 28.11.2004

Ostrzeżenie: (0%)
-----


Wczesniej jeszcze przed napisaniem posta wyzej, wgralem plugina do ff ktory mialmi pokazac te sprawy, niestety niedziala. Wchodzac na podana strone otrzymuje takie naglowki:
Cytat
Accept:
Accept-Charset:
Accept-Encoding:
Accept-Language:
Connection:
Host:
Keep-Alive:
Referer:
User-Agent:

Domyslam sie, ze host, referer w tym przypadku nie sa potrzebne. Cala reszte procz user-agent podpiac za pomoca opcji CURLOPT_HTTPHEADER. Czy to wystarczy by udawac przegladarke na 100% ?
Go to the top of the page
+Quote Post
Ludvik
post 26.07.2006, 22:48:49
Post #7





Grupa: Przyjaciele php.pl
Postów: 698
Pomógł: 3
Dołączył: 28.03.2004
Skąd: Wrocław

Ostrzeżenie: (0%)
-----


Accept-Encoding jeszcze zastąp specjalną opcją. Jeżeli wyślesz samodzielnie nagłówek, to nie daj boże, jak dostaniesz zakodowaną odpowiedź. Przy odkodowywaniu sypały mi się trochę funkcje gzip...


--------------------
Go to the top of the page
+Quote Post
no_face
post 27.07.2006, 09:15:18
Post #8





Grupa: Zarejestrowani
Postów: 346
Pomógł: 23
Dołączył: 28.11.2004

Ostrzeżenie: (0%)
-----


Zgodnie z Waszymi wskazowkami na podstawie naglowkow ktore otrzymalem ze strony podanej wyzej.
Cytat
Accept: text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5
Accept-Charset: ISO-8859-2,utf-8;q=0.7,*;q=0.7
Accept-Encoding: gzip,deflate
Accept-Language: pl,en-us;q=0.7,en;q=0.3
Connection: keep-alive
Host: pgl.yoyo.org
Keep-Alive: 300
User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; pl; rv:1.8.0.4) Gecko/20060508 Firefox/1.5.0.4


Napisalem kilka linijek kodu:
Kod
$header = 'Accept: text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5';
$header .= 'Accept-Charset: ISO-8859-2,utf-8;q=0.7,*;q=0.7';
$header .= 'Accept-Language: pl,en-us;q=0.7,en;q=0.3';
$header .= 'Connection: keep-alive';
$header .= 'Host: rownoznaczny_z_url_curla';
$header .= 'Keep-Alive: 300';

curl_setopt($c, CURLOPT_URL, "http://strona.pl");
curl_setopt($c, CURL_POST, 1);
curl_setopt($c, CURLOPT_POSTFIELDS, "post_data");
curl_setopt($c, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($c, CURLOPT_USERAGENT, $_SERVER['HTTP_USER_AGENT']);
curl_setopt($c, CURLOPT_ENCODING , "gzip,deflate");
curl_setopt($c, CURLOPT_HTTPHEADER, $header);

Chcialbym sie zorientowac, czy poprawnie to sklecilem i czy o to chodzilo. I jeszcze jedno czy pomiedzy np: Connection: keep-alive ma byc spacja, czy tabulator, czy to bez znaczenia.
Go to the top of the page
+Quote Post
Ludvik
post 27.07.2006, 16:31:19
Post #9





Grupa: Przyjaciele php.pl
Postów: 698
Pomógł: 3
Dołączył: 28.03.2004
Skąd: Wrocław

Ostrzeżenie: (0%)
-----


Na pewno nie tak:
  1. <?php
  2. $header = 'Accept: text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5';
  3. $header .= 'Accept-Charset: ISO-8859-2,utf-8;q=0.7,*;q=0.7';
  4. $header .= 'Accept-Language: pl,en-us;q=0.7,en;q=0.3';
  5. $header .= 'Connection: keep-alive';
  6. $header .= 'Host: rownoznaczny_z_url_curla';
  7. $header .= 'Keep-Alive: 300';
  8. ?>

Raczej tak:
  1. <?php
  2. $header = array();
  3. $header[] = 'Accept: text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5';
  4. $header[] = 'Accept-Charset: ISO-8859-2,utf-8;q=0.7,*;q=0.7';
  5. $header[] = 'Accept-Language: pl,en-us;q=0.7,en;q=0.3';
  6. $header[] = 'Connection: keep-alive';
  7. $header[] = 'Host: rownoznaczny_z_url_curla';
  8. $header[] = 'Keep-Alive: 300';
  9. ?>

Poza tym powinno być:
  1. <?php
  2. curl_setopt($c, CURLOPT_ENCODING , '');
  3. ?>


--------------------
Go to the top of the page
+Quote Post
no_face
post 30.07.2006, 14:23:34
Post #10





Grupa: Zarejestrowani
Postów: 346
Pomógł: 23
Dołączył: 28.11.2004

Ostrzeżenie: (0%)
-----


Po prostu polaczylem ze soba ciagi znakow, myslalem ze takie rozwiazanie moglo byc dobre.

Piszac:
Kod
curl_setopt($c, CURLOPT_ENCODING , "gzip,deflate");

Stososowalem sie do tego co wyzej napisales, by zastapic kodowanie specjalna opcja, nie myslalem ze trzeba ja wylaczyc, piszac tak:
Kod
curl_setopt($c, CURLOPT_ENCODING , '');


Wiec przy takich ustawieniach nie idzie rozpoznac czy to wchodzi sie czysto przez przegladarke czy nie?

Dziekuje za wszystkie informacje i czas poswiecony.
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 12.06.2025 - 15:14