Продолжаю писать парсер в учебных целях
Вчера писал, что начал изучать php и начал писать парсер нововстей.
Сегодня решил запустить все это дело на работе под Денвером.
Нихрена не работает.
А вся фишка в том, что на работе стоит прокси сервер. Я не админ.
Мой локальный apache не может проваться через проксю.
Отсюда не работают всякие фишки file_get_content(), curl.
Часа 2 гуглил. На счет file_get_content() ничего не нашел нормального.
Как локальный apache через проксю пропустить, тоже не нашел.
Но нашел способ как curl через прокси пропустить.
function get_page_data($RequestUrl) { $cUrl = curl_init(); curl_setopt($cUrl, CURLOPT_URL, $RequestUrl); curl_setopt($cUrl, CURLOPT_RETURNTRANSFER, 1); curl_setopt($cUrl, CURLOPT_USERAGENT, 'User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.7.5) Gecko/20041107 Firefox/1.0'); curl_setopt($cUrl, CURLOPT_FOLLOWLOCATION, 1); curl_setopt($cUrl, CURLOPT_PROXY, login:pass@proxy:port); if ($CookieData !== '') { curl_setopt($cUrl, CURLOPT_COOKIE, $CookieData); } if ($_SERVER['REQUEST_METHOD'] === 'POST') { curl_setopt($cUrl, CURLOPT_POST, 1); curl_setopt($cUrl, CURLOPT_POSTFIELDS, $_POST); } $PageContent = curl_exec($cUrl); //echo $PageContent; curl_close($cUrl); return $PageContent; }
$text = get_page_data('http://site.ru/');
Теперь я продолжаю делать парсер.
Вчера попробовал использовать Simple HTML DOM.
Чтобы через Simple HTML DOM работать с исходником выкачанной страницы, надо сделать так
$text = str_get_html( $text );
Даже, наверное, лучше сделать так:
$text = str_get_html( $text );
$text = iconv("windows-1251", "UTF-8", $text);
Приведем все к единой кодировке UTF-8. Хотя все зависит от обстоятельств.

Оставьте комментарий!