提取谷歌快讯链接原始地址(Extract original url from Google Aler

2019-10-17 22:44发布

我希望有人能帮助我走出这个小问题..?

我使用谷歌快讯打破新闻报道列出的网站,不幸的是,当我试图找到原来的URL(前谷歌快讯),我得到的是谷歌的网址,如下图所示拉;

http://www.google.com/url?sa=X&q=

http://www.source.com/2013/04/02/title.html

&CT = GA及CAD = CAcQARgAIAAoATAAOABArOXtigVIAlAAWABiBWVuLVVT&CD = ZQHHhnCXS8w&USG = AFQjCNGGGZgSyC3KvMJUW0ICYsCtRZ2uJA

我打破了这个网址到相关科室,使之更容易执行,第一部分总是完全一样的,但是2楼和3件不发生变化。 第三部分却总是和CT =开始我以为是查询的一部分..?

在我使用的脚本,这整个URL被指定为$ LINK&什么,我想这样做,如果可能的是提取自谷歌快讯网址对应的原始源URL,从而使归属飞到哪里,它的目的是去和不这个家伙在中间!

我的PHP知识是非常基本的所以任何帮助将不胜感激。

谢谢

Answer 1:

您可以使用此功能,基本上采用的起始URL,遵循所有的重定向和返回最后一个有效的URL它。

/**
 * Get target url from a redirect
 *
 * @param string $url Source url
 * @return string
 */

function getLastEffectiveUrl($url) {

    // initialize cURL
    $curl = curl_init($url);
    curl_setopt_array($curl, array(
        CURLOPT_RETURNTRANSFER  => true,
        CURLOPT_FOLLOWLOCATION  => true,
    ));

    // execute the request
    $result = curl_exec($curl);

    // fail if the request was not successful
    if ($result === false) {
        curl_close($curl);
        return null;
    }

    // extract the target url
    $redirectUrl = curl_getinfo($curl, CURLINFO_EFFECTIVE_URL);
    curl_close($curl);

        return $redirectUrl;
    }

用法很简单。 如果我们想要获取的马克·扎克伯格的个人形象在过去有效的网址,我们将要求这样的功能:

    $lastEffectiveUrl = getLastEffectiveUrl('http://graph.facebook.com/4/picture');

价值$lastEffectiveUrl通话结束后会预期:

    'http://profile.ak.fbcdn.net/hprofile-ak-snc4/157340_4_3955636_q.jpg';

所有的功劳是谁写这篇文章的人,我只是做了小挖: 获取从一系列重定向的最后一个有效的URL指定网址



文章来源: Extract original url from Google Alerts link
标签: url extract