功能描述:利用php语法做一个获取微博热点的接口,并且在网站上展示这个功能!下面web建站小编给大家介绍具体实现代码!

具体实现代码方法一:
方法一是直接调用微博热搜榜接口
<?php
function getWeiboHotSearch() {
$url = "https://weibo.com/ajax/side/hotSearch"; // 微博热搜榜接口
$_md5 = md5(time());
$cookie = "Cookie: {$_md5}:FG=1"; // 模拟 Cookie
$response = curlRequest($url, $cookie); // 发送请求
$jsonRes = json_decode($response, true); // 解析 JSON 数据
$hotSearchList = [];
foreach ($jsonRes['data']['realtime'] as $k => $v) {
$hotSearchList[] = [
'index' => $k + 1, // 排名
'title' => $v['note'], // 热搜词
'hot' => round($v['num'] / 10000, 1) . '万', // 热度
'url' => "https://s.weibo.com/weibo?q=" . urlencode($v['note']) . "&Refer=index" // 搜索链接
];
}
return $hotSearchList;
}
function curlRequest($url, $cookie) {
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_COOKIE, $cookie);
curl_setopt($ch, CURLOPT_USERAGENT, 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.110 Safari/537.3');
$response = curl_exec($ch);
curl_close($ch);
return $response;
}
// 输出结果
$result = getWeiboHotSearch();
foreach ($result as $item) {
$title = htmlspecialchars($item['title'], ENT_QUOTES, 'UTF-8'); // 防止XSS攻击
$hot = htmlspecialchars($item['hot'], ENT_QUOTES, 'UTF-8'); // 防止XSS攻击
echo "<li><a href=\"javascript:;\" rel=\"noopener\" onclick=\"window.open('{$item['url']}');\" title=\"{$title}\"><i>{$title}</i><span>{$hot}</span></a></li>";
}
?>
具体实现代码方法二:
方法二是直接调用第三方接口,缺点是太依赖第三方的稳定性!
<?php
header("Content-type:application/json; charset=utf-8");
// 微博热搜API
$url = "https://api.suyanw.cn/api/wb_hot.php?type=json"; // 第三方微博热搜API接口
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$html = curl_exec($ch);
curl_close($ch);
$result = json_decode($html, true);
$hotList = $result['data']; //如果不想要全部数据,可以在这里截取
// 输出热点数据
if (!empty($hotList)) {
foreach ($hotList as $item) {
$title = htmlspecialchars($item['title']); // 转义标题
$url = "https://s.weibo.com/weibo?q=" . urlencode($item['title']); // 转换为PC版链接
$hotScore = $item['hot']; // 如果没有热度值,显示“无热度值”
echo "<li><a href=\"javascript:;\" rel=\"noopener\" onclick=\"window.open('{$item['url']}');\" title=\"{$title}\"><i>{$title}</i><span>{$hot}</span></a></li>";
}
} else {
echo "<p>暂无热点数据</p>";
}
?>
获取微博热点榜的接口已经完成了,如果想在自己的网站上展示微博热点榜可以用参考《利用php语法做一个获取百度热点的接口,并在网站上展示》
微博热榜(官网) 打不开万能教程:
1、微信/QQ内打不开:
把链接复制到系统浏览器再访问,微信/QQ内置页常自动拦截第三方站。
2、浏览器报“违规”:
部分国产浏览器的误拦截,换用系统原生浏览器即可:iPhone→Safari,安卓→Edge、Alook、X、Via 等轻量浏览器,均不会误屏蔽。
3、网络加载慢或空白:
先切换 4G/5G 与 Wi-Fi 对比;可以尝试使用网络加速器,将网络切换至更稳定的运营商。另外,部分网站可能需要科学上网才能访问,如Google、Hugging Face等一些国外服务器的网站(不推荐)。
相关阅读文章
上面是“利用php语法获取微博热点榜的接口(2种方法)”的全面内容,想了解更多关于 IT知识 内容,请继续关注web建站教程。
当前网址:https://ipkd.cn/webs_19192.html
微博热榜数据评估
【微博热榜】浏览人数已经达到 202 次,如你需要查询该站的相关权重信息,建议直接到 5118、爱站或Chinaz 搜索域名「ipkd.cn」查看最新权重、收录与关键词排名;若需精确的 IP、PV、跳出率等核心指标,仍需与站长沟通获取后台数据。总体判断时,可把访问速度、索引量、用户停留体验等因素一起纳入考量,并结合自身需求再做决策。
workflows工作流
1个可爱的白色短发女孩
一只被水晶包围的小动物ComfyUI工作流
一只竹节虫ComfyUI工作流
一架受损严重的宇宙飞船内有一只猫
荷塘月色ComfyUI工作流
一只黑色的小猫在童话森林里嗅着一朵发光的外星花
一个男人正走进科幻的大门ComfyUI工作流
汉堡里的一只毛茸茸的小猫ComfyUI工作流
猜你喜欢
声明:本站提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请发送到邮箱:admin@ipkd.cn,我们会在看到邮件的第一时间内为您处理!

css3做一个风雨雷电天气动态图标
iframe开发admin后台
3d文字动画效果
css3卡片动态滑动效果
如何利用svg做一个有趣的loading动画加载
纯html+css做一个3d统计效果
canvas空间文本射线
纯css3绘制的小鸟



