Autor Zpráva
it47
Profil
Ahojte,

prosim vas, potrebujem vyparsovat nieco z jedneho webu a vracia mi stale nejaky SSL problem. :(

echo file_get_contents('https://www.adidas.sk/adidasrunners/community/bratislava');

Chyby:
file_get_contents(): SSL: Operation timed out in
failed to open stream: HTTP request failed!


Skusal som googlit, ale v zasade nic nefunguje. :(

Neviete mi prosim poradit ako to vyriesit?

Vopred vdaka.
Tomášeek
Profil
it47:
Při hození chybové hlášky do google mi vyjede hafo odkazů na Stackoverflow (mimo jiné), kde to je Xkrát řešené. Kde je konkrétně problém?
it47
Profil
Tomášeek:
ja som skoro vsetky vyskusal a stale mi vyhadzuje chyby:

file_get_contents(): SSL: Operation timed out in
failed to open stream: HTTP request failed!

tebe to ide?
Tomášeek
Profil
it47:
Samozřejmě. Záleží na nastavení serveru, druhá možnost je pak použít cURL místo file_get_contents. Možností je možná více, já si vždy dle možností vystačil s těmito dvěmi. Proklikej si pár odkazů na SO.
it47
Profil
Tomášeek:
dakujem za odpoved, ale samozrejme, ze som skusal aj curl, aj mne vzdy stacia tieto dve.

Avsak tato stranka je nejaka prilis specificka a stale to hadze chyby... ako kebyze to mali nejake zablokovane.

Curl pise zase takuto chybu:

Error:SSL read: error:00000000:lib(0):func(0):reason(0), errno 60

Skus si to tiez a uvidis, ze to nie je take jednoduche.

Viete mi prosim niekto poradit?

Vopred dakujem velmi pekne.
Davex
Profil
it47:
Avsak tato stranka je nejaka prilis specificka a stale to hadze chyby... ako kebyze to mali nejake zablokovane.
Ano, mají tam ochranu proti robotům. Dá se to obejít posíláním správných HTTP hlaviček, ale v podmínkách použití webu je takové použití v bodě 3.6 zakázáno.
it47
Profil
Davex:
a vedel by si mi pls. poradit, ake spravne HTTP hlavicky by som mal posielat?

ja si to chcem iba vyskusat, ci to bude fungovat, aby som to vedel aj do buducnosti.

Vopred vdaka za odpoved.
Davex
Profil
it47:
Skript by měl v požadavku posílat stejné hlavičky jako webový prohlížeč. Některé hlavičky tam teď být nemusí, ale v budoucnu by se to mohlo změnit.
it47
Profil
Davex:
dakujem pekne za rady, skusam a skusam... ale uz mam aspon iba jednu chybu:

failed to open stream: HTTP request failed!

$context_params = array(
    'http' => array(
        'method' => 'GET',
        'user_agent' => 'User-Agent: Mozilla/5.0 (iPad; U; CPU OS 3_2 like Mac OS X; en-us) AppleWebKit/531.21.10 (KHTML, like Gecko) Version/4.0.4 Mobile/7B334b Safari/531.21.102011-10-16 20:23:10',
        'timeout' => 1
    )
);
$res = file_get_contents($url, FALSE, stream_context_create($context_params));

Vedeli by ste mi prosim poradit, ako to vylepsit? :)

Vopred dakujem velmi pekne.
Davex
Profil
Kromě toho, že máš user_agent nastaveno chybně, to samotné nestačí. Prohlížeče posílají ještě další HTTP hlavičky.
it47
Profil
Davex:
a vedel by si mi pls. poradit ake hlavicky este posielaju prehliadace? :)

Vopred dakujem velmi pekne.
Kajman
Profil
it47:
V prohlížeči dejte F12 a v záložce síť je všechny najdete.

Zkuste se ale raději zeptat provozovatele stránek, zda by Vám neposkytl potřebná data přes nějaké API (klidně placené, pokud to je pro Vás důležité).

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm:

0