Пишу скрипт для парсинга с этого сайта http://tradein[dot]arteks[dot]ru/auto/
Отдельно скрипт работает, а в цикле, где я пытаюсь перебрать все страницы, он почему-то выдает один и тот же контент и, соответственно, ссылки.
Помогите разобраться.
1. Cherub - 02 Декабря, 2011 - 20:45:03 - перейти к сообщению
2. Данил_123 - 02 Декабря, 2011 - 20:49:39 - перейти к сообщению
цикл в студию
3. Microteam - 02 Декабря, 2011 - 20:58:10 - перейти к сообщению
Мы не телепаты нам нужен ваш цикл...
4. sKaa - 02 Декабря, 2011 - 21:33:56 - перейти к сообщению
Эй телепаты ) там вложенный файл у него в сообщении ))
5. Данил_123 - 02 Декабря, 2011 - 21:52:03 - перейти к сообщению
sKaa вот блин, точно
Cherub если ни кто не ответит завтра утром гляну
Cherub если ни кто не ответит завтра утром гляну
6. OrmaJever - 02 Декабря, 2011 - 22:02:59 - перейти к сообщению
А насчитал там 4 цыкла. И какой не работает?
7. Bio man - 02 Декабря, 2011 - 23:01:36 - перейти к сообщению
и почему нельзя в посте привести код, зачем прикреплять файл?
OrmaJever пишет:
аналогично
А насчитал там 4 цыкла. И какой не работает?
8. Cherub - 02 Декабря, 2011 - 23:41:13 - перейти к сообщению
Извиняюсь. Затупил.
Вот этот скрипт работает нормально отдельно:
$url = 'http://tradein.arteks.ru'.substr($links_pre[0][$r],8,-2);
$contents = file_get_contents($url);
$tag_in = '<div class="text_foto" id="foto">';
$tag_out = '<div class="text_only" id="txt" style="display:none;">';
$position = strpos($contents,$tag_in);
$contents = substr($contents,$position);
$position = strpos($contents,$tag_out);
$contents = substr($contents,0,$position);
preg_match_all('/class="car_zag"[^>]+>/',$contents,$links);
а в цикле он почему-то берет только первое значение ссылки. Соответственно он парсит только машины первой страницы поиска. Никак не могу понять это.
Вот этот скрипт работает нормально отдельно:
$url = 'http://tradein.arteks.ru'.substr($links_pre[0][$r],8,-2);
$contents = file_get_contents($url);
$tag_in = '<div class="text_foto" id="foto">';
$tag_out = '<div class="text_only" id="txt" style="display:none;">';
$position = strpos($contents,$tag_in);
$contents = substr($contents,$position);
$position = strpos($contents,$tag_out);
$contents = substr($contents,0,$position);
preg_match_all('/class="car_zag"[^>]+>/',$contents,$links);
а в цикле он почему-то берет только первое значение ссылки. Соответственно он парсит только машины первой страницы поиска. Никак не могу понять это.
9. Microteam - 03 Декабря, 2011 - 11:15:39 - перейти к сообщению
А если у меня модем настроен как MER (Mac Encapsulating Routing)... и вместо логина с паролем у меня DNS(((
10. Cherub - 03 Декабря, 2011 - 11:20:27 - перейти к сообщению
Я сам только со среды начал изучать php, а в четверг начал изучать парсинг. Только вот это пока смог написать. Даже регулярное выражение только одно знаю. Поэтому ваш вопрос вообще не понял. )) Все делал через Денвер.
11. DeepVarvar - 03 Декабря, 2011 - 11:27:34 - перейти к сообщению
Да он походу темой ошибся..
12. Cherub - 03 Декабря, 2011 - 11:45:34 - перейти к сообщению
Похоже на то. Ну дак что, кто-нибудь может помочь мне понять, где у меня косяк?
13. OrmaJever - 03 Декабря, 2011 - 13:14:08 - перейти к сообщению
http://www.phpfaq[dot]ru/debug прочитать обязательно. Так сразу сложно сказать где ошибка, там много спорных мест
14. Cherub - 05 Декабря, 2011 - 10:47:57 - перейти к сообщению
Хм...
15. test - 05 Декабря, 2011 - 12:10:38 - перейти к сообщению
Cherub пишет:
$url = 'http://tradein.arteks.ru'.substr($links_pre[0][$r],8,-2);
что тут за ссылка должна быть, если я не ошибаюсь ты не правильно её формируешь, после
Cherub пишет:
$url = 'http://tradein.arteks.ru
надо поставить / , а потом уже склеивать строки!