Есть задача перенести довольно большое количество информации с одного сайта на другой (с разрешения владельцев ). Вручную долго, потому хочу написать скрипт, который будет читать странички с требуемого сайта, парсить их, и заносить информацию в бд. Но столкнулся со следующей проблемой - читаю страница и в полученном тексте появляются разные символы и наборы символов (букв, цифр), вроде b4e, 12e, 239, 70, f и т.д. Причём при разных запусках скрипта, появляются разные символы и в разных местах. Подскажите, пожалуйста, почему так происходит и как с этим бороться?
Вот код ф-ии, которая читает страницы:
PHP:
скопировать код в буфер обмена
<?PHP function read_url($path, $cookies = "") { if (!$path) return false; $request = "GET $path[path]" . ((strlen($path['query']) > 0) ? "?" . $path['query'] : "" ) . " HTTP/1.1\r\n" . "Host: $path[host]\r\n" . "Connection: close\r\n" . (($cookies != "") ? "Cookie: $cookies\r\n\r\n" : "\r\n"); $socket = fsockopen($path['host'], 80 , $errno, $errstr, 29 ); if (!$socket) return false; $data = ""; { $data .= fread($socket, 4096 ); } return $data; } ?>
Это относится именно к страницам сайта, если с помощью этой ф-ии читать картинки, то всё в порядке - нормально отображаются и скачиваются.
(Добавление)
Всё, сам разобрался. Надо было не
писать, а
Может кому пригодится (Отредактировано автором: 20 Апреля, 2009 - 19:19:32)
|