gpt4 book ai didi

php - CURL 和 JSON 问题

转载 作者:行者123 更新时间:2023-11-29 05:41:30 25 4
gpt4 key购买 nike

我正在尝试设置一个脚本来抓取我的 Facebook 页面并将所有信息返回给我,以便我能够将其插入数据库(姓名、喜欢等)。我构建了一个 CURL 脚本,但由于某些奇怪的原因它无法正常工作。它向我抛出“注意:试图在第 26 行获取 C:\xampp\XXX\curltest.php 中非对象的属性”。

是的,我的服务器上启用了 JSON 和 CURL。如果有人愿意帮忙,我会很高兴。 ;)

    <?php
// create both cURL resources
$ch1 = curl_init();
$ch2 = curl_init();

// set URL and other appropriate options
curl_setopt($ch1, CURLOPT_URL, "http://graph.facebook.com/19292868552");
curl_setopt($ch1, CURLOPT_HEADER, 0);
curl_setopt($ch1, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch2, CURLOPT_URL, "http://graph.facebook.com/youtube");
curl_setopt($ch2, CURLOPT_HEADER, 0);
curl_setopt($ch2, CURLOPT_RETURNTRANSFER, 1);

//create the multiple cURL handle
$mh = curl_multi_init();

//add the two handles
curl_multi_add_handle($mh,$ch1);
curl_multi_add_handle($mh,$ch2);

$running=null;
//execute the handles
do {
usleep(10000);
$Likes = json_decode(curl_multi_exec($mh,$running));
return $Likes->data;

//output the message body
echo($Likes->likes);
//add a line break to separate comments
echo("<br />");

} while ($running > 0);



//close the handles
curl_multi_remove_handle($mh, $ch1);
curl_multi_remove_handle($mh, $ch2);
curl_multi_close($mh);


?>

我还想知道如何制作某种“while”函数。比方说,如果我想抓取 10 个 URL,我不能一个一个地写它们,所以我最好做一个 SQL 查询来从那里提取这些 URL。

提前致谢。

最佳答案

基本上,$Likes 变量中没有任何内容。您应该进行测试以确保您的执行和解码成功。

该变量中没有任何内容的原因是 json_decode() 失败。 json_decode() 失败的原因是 curl_multi_exec() 函数的输出是 cURL 进程的句柄。如果你read the documentation ,你会看到的。

您需要使用 curl_multi_getcontent()获取返回的数据。

关于php - CURL 和 JSON 问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6455526/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com