PHP 百度热搜榜 内容获取

<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>百度热搜</title>
</head>

<body>
<p><a href="?type=realtime&number=49">百度热搜榜</a> <a href="?type=novel&number=29">小说榜</a> <a href="?type=movie&number=28">电影榜</a> <a href="?type=teleplay&number=29">电视剧榜</a> <a href="?type=car&number=29">汽车榜</a> <a href="?type=game&number=29">游戏榜</a></p>
<?php
// 目标网址的URL;

//header('Content-Type: text/html; charset=utf-8');
$url = "https://top.baidu.com/api/board?tab=".$_GET['type'];
 
// 初始化cURL会话
$ch = curl_init($url);
 
// 设置cURL选项
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); // 将curl_exec()获取的信息以字符串返回,而不是直接输出
curl_setopt($ch, CURLOPT_HEADER, false); // 不需要头部信息
 
// 执行cURL会话
$response = curl_exec($ch);

// 关闭cURL会话
curl_close($ch);
 
// 尝试解析JSON内容
$data = json_decode($response, true);
 
// 检查是否解析成功
if (json_last_error() === JSON_ERROR_NONE) {
    // JSON解析成功,可以使用$data
 //print_r($data);
//print_r($data);
$cards = $data['data']['cards'];
foreach ($cards as $i => $card) {
        $cardContent = $card['content'];
        $cardItems = array();
}
//提取置顶热搜的url、desc、hotChange、hotScore、index、hotTag、hotTagImg、img和word的内容	
for ($i=0;$i<=$_GET['number'];$i++) {
$url = $cards[0]['content'][$i]['url'];
$word = $cards[0]['content'][$i]['word'];
$hotScore = $cards[0]['content'][$i]['hotScore'];
echo '<a href='.$url.' target="_blank">'.($i+1).'.'.$word.'</a> - '.$hotScore.'<br>';
}
} else {
    // 错误处理
    echo "JSON解析出错";
}
?>
</body>
</html>

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值