![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 2 Pomógł: 0 Dołączył: 11.06.2012 Ostrzeżenie: (0%) ![]() ![]() |
Witam, posiadam taki kod (adres przykladowy):
Więc tak, x to id produktu, a 1 (po przecinku) to id kategorii. Wchodząc na stronę zmieniając tylko id produktu strona przekierowuje na stronę z odpowiednim id kategorii. I tak wchodząc np na http://www.adres.pl/1001,1.html i kiedy produkt jest w kategorii id 5, przekierowuje na http://www.adres.pl/1001,5.html. Oczywiście skrypt tego nie ogarnia i nie pobiera danych. Próbowałem zrobić opóznienie, aby był czas na pobranie danych, ale to z góry skazane było na niepowodzenie. Jest jakiś sposób na rozwiązanie tego problemu? Wiem że mogę przelecieć wszystko id produktów w każdej kategorii, ale wtedy z 150tys. robi się ok. 75mln zapytań. Z góry wielkie dzięki. EDIT: teraz spróbowałem użyć:
ale tylko dostałem
Ten post edytował kubu65 11.06.2012, 02:12:32 |
|
|
![]()
Post
#2
|
|
![]() Grupa: Zarejestrowani Postów: 1 527 Pomógł: 438 Dołączył: 28.06.2011 Skąd: Warszawa Ostrzeżenie: (0%) ![]() ![]() |
Do takich rzeczy najlepiej było by użyć jednak CURL.
Dzięki niemu możesz nakazać pożądanie za przekierowaniami i w ten sposób otrzymywać ostateczną treść strony jeśli zostanie przekierowana. Przykład:
Jeśli nie masz dostępu do CURL lub masz włączone OPEN_BASEDIR (wówczas nie działa CURLOPT_FOLLOWLOCATION) proponuje użyć fopen lub fsocketopen i śledzić manualnie nagłówki. Czyli pobierasz strone z nagłówkami i patrzysz czy w nagłówkach nie ma "Location: jakis_adres" (preg_match) jeśli jest to robisz nowy request na ten adres i tak do skutku - jak nie ma już Location to bierzesz treść. -------------------- If you're good at something, never do it for free.
Potrzebujesz skryptu JS lub PHP - szukasz kogoś kto przetestuje twoją aplikację pod względem bezpieczeństwa? Szybko i solidnie? Napisz ;) Mój blog - Jak zwiększyć wydajność front-endu - O buforowaniu wyjścia w PHP słów kilka... |
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 2 Pomógł: 0 Dołączył: 11.06.2012 Ostrzeżenie: (0%) ![]() ![]() |
Zastosowałem CURL. Kieyd jest wpisana odpowiednia kategoria to działa bez problemu, jednak w innym przypadku niestety już nie
![]() Wyłączyłem open_basedir, php info mam dwa razy "no value", natomiast curl: cURL support enabled cURL Information libcurl/7.15.5 OpenSSL/0.9.8b zlib/1.2.3 libidn/0.6.5 i jeszcze w innych miejscach: Configure Command '--without-curl' additional .ini files parsed /etc/php.d/curl.ini Co jeszcze może być źle, serwer zaktualizowałem, ale może trzeba coś do CURL doinstalować? Za bardzo nie wiem o co nawet pytać, ponieważ się na tym prawie nie znam. EDIT: Wpadłem na trochę inne rozwiązanie, ponieważ jest dużo pustych id, bo w przedziale 1-500tys. tylko 40tys. jest zajętych, postanowiłem, że pobiorę wszystkie linki do notatnika, ale nie potrafię zrobić tak prostej rzeży jak odczytywanie przez pętlę tekstu z .txt. Oczywiście każdy link będzie w osobnej lini. Ten post edytował kubu65 12.06.2012, 13:55:25 |
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 594 Pomógł: 122 Dołączył: 17.07.2005 Skąd: P-na Ostrzeżenie: (0%) ![]() ![]() |
|
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 24.07.2025 - 17:10 |