2016-10-04 97 views
1

我试图用cURL获取葡萄树图像,但它返回空白。用cURL获取葡萄树图像

我想提取从葡萄的meta标签

<meta property="twitter:image:src" content="https://v.cdn.vine.co/r/thumbs/C40D8A18E21388329752896937984_58406422053.35.0.D4119957-7F82-4C6F-94EC-4732C58E79E1.mp4.jpg?versionId=lWIZyat1QyiI8rjnz3KFsbWtuOoUmGFn">` 

图像这是我的代码

$ch1eckUrl = "https://vine.co/v/51wPzgnEHLb"; 

function getVineVideoFromImage($ch1eckUrl) { 
    $ch1 = curl_init($ch1eckUrl); 
    curl_setopt($ch1, CURLOPT_RETURNTRANSFER, 1); 
    $res1 = curl_exec($ch1); 
    preg_match('/twitter:image:src.*content="(.*)"/', $res1, $opimage); 
    $VineImage = $opimage[1]; 
} 

Applicate如果有人能指出我做什么我错了这里

+0

做了任何基本的调试,比如'var_dump($ res1)'看看你是否真的获取了任何东西?检查preg_match是否实际发现了某些内容?你只是假装什么都不会出问题,总会找到一些东西。显然这些都是不好的假设。 –

+0

'$ CheckUrl =“https://vine.co/v/51wPzgnEHLb”' - 错过';'这里,只是说'如果它是你的真实代码。 –

+0

@MarcB当我做同样的视频链接,它工作正常。所以意味着它会让内容变得更好。它不适用于图片 – Jordyn

回答

1

答案是已发布在这里:How to get Vine video url

你甚至复制了一个答案。只需将twitter:player:stream.替换为twitter:image:src即可。

我不好,没看过图片

关于这一点,有一个更简单的方法:

<?php 

    $ch1eckUrl = 'https://vine.co/oembed/51wPzgnEHLb.json'; 

    function getVineVideoFromImage($ch1eckUrl) { 

     $json = json_decode(file_get_contents($ch1eckUrl), true); 

     return $json['thumbnail_url']; 

    } 

    $VineImage = getVineVideoFromImage($ch1eckUrl); 

    echo($VineImage); 

?> 

藤服务器JSON,所以只是取的是和解码它,你得到了网址。

+0

它像一个魅力。谢谢。 – Jordyn