Вернуться   Форум SAPE.RU > Общие вопросы > Разработка и сопровождение сайтов

-->
Ответ
 
Опции темы
Старый 27.02.2008, 16:03   #31
Новичок
 
Регистрация: 20.07.2007
Сообщений: 10
Вес репутации: 0
OFF на пути к лучшему
По умолчанию

Цитата:
<?
set_time_limit(0);
$cat = 'Business/Production/'; //сюда вписывает нужную категорию
$delay = '7';
$url = 'http://pda.yaca.yandex.ru/yca/tungrp/cat/'.$cat;
$np_pat = '/<a target="_self" href="(.*)"><font color="#333333">след.<\/font><\/a>/U';
$yc_pat = '/<li>\n<font><a.*href="(.*)".*>.*<\/li>/isU';
echo "<ol>";
while ($data = file_get_contents($url)) {
$data = iconv('utf-8', 'cp1251', $data);
preg_match_all($yc_pat, $data, $o1, PREG_SET_ORDER);
foreach ($o1 as $o) echo "<li>".$o[1]; flush();
preg_match($np_pat, $data, $o2);
$url = ($o2 ? 'http://pda.yaca.yandex.ru/yca/tungrp/cat/'.$cat. $o2[1]:FALSE);
sleep($delay);
}
?>
Выдаёт ошибку:

Цитата:
Fatal error: Call to undefined function iconv() in /home/off/data/www/clubwave.ru/test/index.php on line 10
OFF вне форума   Ответить с цитированием
Старый 27.02.2008, 16:05   #32
Новичок
 
Регистрация: 20.07.2007
Сообщений: 10
Вес репутации: 0
OFF на пути к лучшему
По умолчанию

всё, ок, первый код заработал
OFF вне форума   Ответить с цитированием
Старый 27.02.2008, 16:45   #33
Погулять вышел
 
Аватар для den78ru
 
Регистрация: 15.05.2007
Адрес: С-Пб! О/ВМ 50/50
Сообщений: 1,921
Вес репутации: 316
den78ru - прекрасное будущееden78ru - прекрасное будущееden78ru - прекрасное будущееden78ru - прекрасное будущееden78ru - прекрасное будущееden78ru - прекрасное будущееden78ru - прекрасное будущееden78ru - прекрасное будущееden78ru - прекрасное будущееden78ru - прекрасное будущееden78ru - прекрасное будущее
По умолчанию

А посмотреть что в 10-ой строке религия не позволяет? Я в пхп полный ноль и то пару строк сам сконструировал, интуитивно..
Вот то что было изначально:

<?
$cat
= 'Business/Corporate_Services/Business_Contacts/'
;
$url = 'http://pda.yaca.yandex.ru/yca/tungrp/cat/'.$cat
;
$np_pat = '/<a target="_self" href="(.*)"><font color="#333333">след.<\/font><\/a>/U'
; $yc_pat = '/<li>\n<font><a.*href="(.*)".*>.*<\/li>/isU';
while (
$data = file_get_contents($url
)) {
$data = iconv('utf-8', 'cp1251', $data
);
preg_match_all($yc_pat, $data, $o1, PREG_SET_ORDER
);
foreach (
$o1 as $o) echo $o[1]."<br />"; flush
();
preg_match($np_pat, $data, $o2
);
$url = ($o2 ? $o2[1]:FALSE
);
}
?>


Он по таймауту вылетал и на следующую страницу не переходил.

Авелон возьми прогером а?
den78ru вне форума   Ответить с цитированием
Старый 27.02.2008, 17:42   #34
Злой модератор
 
Аватар для Wink
 
Регистрация: 25.03.2007
Адрес: Deep forest
Сообщений: 5,343
Вес репутации: 503
Wink - прекрасное будущееWink - прекрасное будущееWink - прекрасное будущееWink - прекрасное будущееWink - прекрасное будущееWink - прекрасное будущееWink - прекрасное будущееWink - прекрасное будущееWink - прекрасное будущееWink - прекрасное будущееWink - прекрасное будущее
По умолчанию

Если iconv на хостинге не работает, то можно другую функцию использовать. Вместо
PHP код:
$data iconv('utf-8''cp1251'$data); 
написать
PHP код:
$data mb_convert_encoding($data"CP1251""UTF-8"); 
А вообще для конвертации можно что-нибудь более универсальное написать, типа такого:
PHP код:
function utf2cp($text)
{
    if (
function_exists('iconv'))
        
$text iconv("UTF-8""CP1251"$text);
    elseif (
function_exists('mb_convert_encoding'))
        
$text mb_convert_encoding($text"CP1251""UTF-8");
    else 
        
$text 'Да что за хостинг то, млин! Нихрена не работает! :( ';
    return 
$text;

Wink вне форума   Ответить с цитированием
Старый 27.02.2008, 19:26   #35
Погулять вышел
 
Аватар для den78ru
 
Регистрация: 15.05.2007
Адрес: С-Пб! О/ВМ 50/50
Сообщений: 1,921
Вес репутации: 316
den78ru - прекрасное будущееden78ru - прекрасное будущееden78ru - прекрасное будущееden78ru - прекрасное будущееden78ru - прекрасное будущееden78ru - прекрасное будущееden78ru - прекрасное будущееden78ru - прекрасное будущееden78ru - прекрасное будущееden78ru - прекрасное будущееden78ru - прекрасное будущее
По умолчанию

ээээ, ты с кем сейчас разговаривал?
den78ru вне форума   Ответить с цитированием
Старый 27.02.2008, 19:53   #36
Злой модератор
 
Аватар для Wink
 
Регистрация: 25.03.2007
Адрес: Deep forest
Сообщений: 5,343
Вес репутации: 503
Wink - прекрасное будущееWink - прекрасное будущееWink - прекрасное будущееWink - прекрасное будущееWink - прекрасное будущееWink - прекрасное будущееWink - прекрасное будущееWink - прекрасное будущееWink - прекрасное будущееWink - прекрасное будущееWink - прекрасное будущее
По умолчанию

Это я на счет
Цитата:
Fatal error: Call to undefined function iconv() in /home/off/data/www/clubwave.ru/test/index.php on line 10
Wink вне форума   Ответить с цитированием
Ответ


Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Подскажите парсер ЯКа bulya Курилка 17 25.04.2012 19:34
Ищу парсер web.archive.org Ufaweb Разработка и сопровождение сайтов 17 09.07.2009 21:20
Парсер YACA Алексей Барыкин Разработка и сопровождение сайтов 44 06.09.2008 00:11
Парсер Я.Каталога kip Курилка 3 06.10.2007 20:17
Соотношение цены YACA / не YACA Zhoo Яндекс 5 16.08.2007 15:45


Часовой пояс GMT +3, время: 07:50.