Написание парсера с использованием simple_html_dom

ЕСТЬ РЕШЕНИЕ ЗАКРЫТО
#1 26 сентября 2012 в 07:47
Здравствуйте!
При написание скрипта парсера, возникли пару не понятных мне ситуаций.
вот сам скрипт:
  1. ini_get('safe_mode') or set_time_limit(0);
  2. function request($url,$post = 0){
  3. $ch = curl_init();
  4. $url = 'http://www.test.ru/';
  5. curl_setopt($ch, CURLOPT_URL, $url );
  6. curl_setopt($ch, CURLOPT_HEADER, 0);
  7. curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
  8. curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
  9. curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 30);
  10. curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
  11. curl_setopt($ch, CURLOPT_COOKIEJAR,dirname(__FILE__).'/cookie.txt');
  12. curl_setopt($ch, CURLOPT_COOKIEFILE,dirname(__FILE__).'/cookie.txt');
  13. curl_setopt($ch, CURLOPT_POST, $post!==0 );
  14. if($post)
  15. curl_setopt($ch, CURLOPT_POSTFIELDS, $post);
  16. $data = curl_exec($ch);
  17. return $data;
  18. }
  19.  
  20. include_once('simple_html_dom.php');
  21. $html = str_get_html(request('http://test.ru/'));
  22. if($html->innertext!='' and
  23. count($html->find('#holliday_prices'))){
  24. foreach($html->find('#holliday_prices') as $blok){
  25. echo $blok;
  26. }
  27. }
Мне необходимо в вырезанном контенте(это $blok), изменить адреса ссылок.
Сейчас ссылки имеют вид: <a href="/route/mow/bcn" title="..." >11805</a>
А нужно чтобы было так: <a href="http://www.test.ru" title="..." >11805</a>
Просьба помочь разобраться:)
#2 26 сентября 2012 в 09:27
решение нашел:)

необходимо задать новую переменную с новым адресом ссыки, после чего произвести замену с помощью preg_replace. и будет счастье:)

Похожие темы

Используя этот сайт, вы соглашаетесь с тем, что мы используем файлы cookie.