Mam pewne zadanie do wykonania. Mam 12 podstron, które muszę pobrać a następnie przeparsować i pewne rzeczy zapisać do pliku.
Problem jest w tym, że pomimo ustawienia czasu wykonywania skryptu na 0 (nieskończone), takiego parametru:
'timeout' => 5, 'ignore_errors' => true ) ) );
pobiera mi tylko 2-3 strony (mimo, że powinno pobrać dla 12). Nawet jak zamienię kolejność, to też przechodzą 2-3.
Próbowałem wrzucać do osobnych skryptów każdy fragment odpowiedzialny za pod stronę i zrobić icinclude, ale dzieje się to samo.
Strony oczywiście są cały czas dostępne.
Myślałem, że też o sleep, ale nie pomaga.
Skrypt mam na localhostcie po nazwą skrypcik.lh , a jako error przechodzi mi na www.skrypcik.lh z informacją, że firefox nie może odnaleźć serwera www.skrypcik.lh .
Dokładniej robię to tak (piszę ręcznie, więc mogą być literówki):
file_put_contents('sciezka_dp_pliku','wartosc',FILE_APPEND); file_put_contents('inny_plik',$zm); $html = file_get_html('inny_plik); //to jest funkcja z parsera Simple DOM foreach(szukam elementów za pomocą Simple DOM) { file_put_contents(('sciezka_dp_pliku',wartosci_pobrane_z_simple_dom); }
Nie chcę edytować, bo chcę odświeżyć z nowymi wiadomościami.
Dodałem wirtualnego hosta z www i także rozłącza.
Próbowałem za pomocą cURLa, ale też rozłącza.
Jedną tylko dziwną rzecz zauważyłem. Podczas generowania zawartości pliku tworzy mi np. 1,2,3,4,5 a potem znika zawartość i znowu tworzy 1,2,3,4,5.
Dodatkowo widziałem w firebugu, jakby 2 razy wywołał się skrypt.
Co może być przyczyną takiego dziwnego, podwójnego wywołania? Poprawnie skrypt powinien zakończyć się białym ekranem, a tutaj za każdym razem firefox nie może odnaleźć serwera. IE i inne przeglądarki też.