Получить конечный url после редиректа

Тема в разделе "PHP", создана пользователем funnywheel, 21 июн 2016.

Статус темы:
Закрыта.
Модераторы: latteo
  1. funnywheel

    funnywheel WordPress developer

    Регистр.:
    6 авг 2010
    Сообщения:
    256
    Симпатии:
    209
    Дано:
    - Есть RSS-лента на FeedBurner'e
    - Умеем собрать из нее ссылки
    - Ссылки с редиректом, вида http://feedproxy.google.com/~r/bla-bla-bla

    Требуется:
    - Получить конечные ссылки на сайт средствами php

    * Также можем собрать ссылки на страницу комментариев, которые в моем случае присутствуют, и имеют вид <нужная_ссылка>#comments, обрезать #comments и получить искомый результат, но интерес получить именно конечную ссылку после редиректа
     
  2. Casper_R

    Casper_R Создатель

    Регистр.:
    3 май 2007
    Сообщения:
    87
    Симпатии:
    31
    ты бы выложил живую ссылку, которую нужно распарсить
     
  3. funnywheel

    funnywheel WordPress developer

    Регистр.:
    6 авг 2010
    Сообщения:
    256
    Симпатии:
    209
    Допустим вот эта ссылочка
    PHP:
    http://feedproxy.google.com/~r/NikonRumors/~3/s7ChirmIAEY/
    Ведет на:
    PHP:
    http://nikonrumors.com/2016/06/21/nikon-d3400d3500-details.aspx/?utm_source=feedburner&utm_medium=feed&utm_campaign=Feed%3A+NikonRumors+%28NikonRumors.com%29
     
  4. Casper_R

    Casper_R Создатель

    Регистр.:
    3 май 2007
    Сообщения:
    87
    Симпатии:
    31
    PHP:
    $ch curl_init();
    curl_setopt($chCURLOPT_URL'http://feedproxy.google.com/~r/NikonRumors/~3/s7ChirmIAEY/');
    curl_setopt($chCURLOPT_RETURNTRANSFER1);
    $result curl_exec($ch);
    preg_match('#href="([^"]+)"#Uis',$result,$out);
    echo 
    $out[1]; //тут твоя ссылка
     
    funnywheel нравится это.
  5. alvocom

    alvocom

    Регистр.:
    3 июн 2008
    Сообщения:
    218
    Симпатии:
    252
    Можно без регулярки, через curl_getinfo() с опцией CURLINFO_EFFECTIVE_URL
     
Статус темы:
Закрыта.