Проблема с Google Pagerank

Тема в разделе "Как сделать...", создана пользователем evrei, 15 апр 2009.

Статус темы:
Закрыта.
  1. evrei

    evrei Постоялец

    Регистр.:
    15 мар 2007
    Сообщения:
    119
    Симпатии:
    52
    скрипт: Google.Page.Rank.Script.UL

    выдаёт всегда:
    код:
    Код:
    123 function linkcheck($url, $engine) {
    124 global $total;
    125 $arr = parse_url($url);
    126 $url = $arr['host'];
    127 $path = "http://www.google.com/search?hl=en&lr=&ie=UTF-8&q=link%3A".$url;
    128 if(!file_exists($path)) {
    129 $data = strtolower(strip_tags(implode("", file($path))));
    130 $data = substr($data, strpos($data, "of about")+9, strlen($data));
    131 $data = substr($data, 0, strpos($data, " "));
    132 if(eregi("[[:alpha:]]", $data)) {
    133 $results[$engine] = array('0', $path);
    134 } else {
    135 $results[$engine] = array($data, $path);
    136 $total+=str_replace(',', '', $data);
    137 }
    138 } else {
    139 $results[$engine] = array('n/a', $path);
    140 }
    141 return $results;
    142 }
    

    подскажите в чём проблема?:nezn:
     
  2. VictorVi

    VictorVi Прохожие

    Судя по логам в этой конструкции:
    if(!file_exists($path)) {

    Странная проверка урла на валидность. Попробуй лучше сначала получить контент, а потом проверить нулевой он или нет.

    $content=file_get_contents($path);
    if (strlen($content)>100){
    далее твой код
    }

    Либо вариант номер два - используй проверку на 200 OK в заголовках получаемой ссылки. Где-то на этом форуме я уже видел такую функцию.
     
  3. MadWizard

    MadWizard Постоялец

    Регистр.:
    24 мар 2009
    Сообщения:
    145
    Симпатии:
    20
    В том, что функция file_exists() проверяет наличие файла/каталога. Эта функция не применима для работы с удаленными файлами, поскольку файл должен быть доступен через файловую систему сервера.
     
  4. serjinio

    serjinio

    Регистр.:
    10 май 2007
    Сообщения:
    439
    Симпатии:
    49
    file_get_contents()
     
Статус темы:
Закрыта.