用腾讯云图做一个粉丝数据查看器

Mrzhou
Mrzhou
Mrzhou
257
文章
1
评论
2020年3月17日03:46:03 评论 360

准备

1、平台粉丝数API,以bilibili举例

2、腾讯云

3、云服务器或云函数

4、php,JavaScript基础

原理

抓取数据API,然后对API进行格式化,然后提取数组,映射到腾讯云图上

API获取

API可以在github上找,也可以F12查找,github上有bilibili非官方整理的API:

比如粉丝数,是这个API:https://api.bilibili.com/x/relation/stat?vmid=24749747

其中:https://api.bilibili.com/x/relation/stat?vmid={查找的uid}

uid可以在个人空间里找到uid例如:

https://space.bilibili.com/24749747

24749747就是UID

腾讯云图对接

在腾讯云图里,编辑数据源用API,如果你直接输入https://api.bilibili.com/x/relation/stat?vmid=24749747,得到的结果是

{"code":0,"message":"0","ttl":1,"data":{"mid":24749747,"following":179,"whisper":0,"black":4,"follower":7708}}

格式化一下

{
    "code":0,
    "message":"0",
    "ttl":1,
    "data":{
        "mid":24749747,
        "following":179,
        "whisper":0,
        "black":4,
        "follower":7708
    }
}

有用的数据在data里,其余都是返回码,所以只要

你会发现有二级数组,而且腾讯云图数据格式要有中括号,二级数组在腾讯云里是没办法提取出来的,所以必须要进行处理

用腾讯云图做一个粉丝数据查看器

数据处理

这里用的是PHP,因为扩展性强

首先先获得bilibiliapi的内容:

//$表示变量 根据自己习惯来
$json= file_get_contents('https://api.bilibili.com/x/relation/stat?vmid=24749747');

再把json格式数据解码为php的数组

//注意这部分变量
$array= array(json_decode($json));

去掉返回的代码值,只提取data部分

$ss = array_column($array, 'data');

将数据转换为json格式,再范化为腾讯云图数据格式,把"{"替换为"{","}"替换为"}"

$a= str_replace("{","[{",$json);
$b= str_replace("}","}]",$a);

最后输出结果

print($jsona);

整合起来就是

<?php
$json= file_get_contents('https://api.bilibili.com/x/relation/stat?vmid=24749747');
$array= array(json_decode($json));
$ss = array_column($array, 'data');
$jsona= json_encode($ss);
$a= str_replace("{","[{",$json);
$b= str_replace("}","}]",$a);
print($jsona);
?>

腾讯云图映射

上传API
PHP的API可以托管给腾讯云函数,每个月有100万次免费额度,或者交给自己服务器处理,这部分不多讲

然后再腾讯云图里把数据改为API,输入PHP路径1

用腾讯云图做一个粉丝数据查看器

勾上

用腾讯云图做一个粉丝数据查看器

数据如下

[
  {
    "mid": 24749747,
    "following": 179,
    "whisper": 0,
    "black": 0,
    "follower": 7708
  }
]

mid:用户UID

Following:关注数

下面两个不知道什么

Follower:粉丝数

根据实际情况映射

用腾讯云图做一个粉丝数据查看器

2020-6-9更新

对于需要SESSDATA的API
首先打开平台网站,然后在网址栏左侧点击

用腾讯云图做一个粉丝数据查看器

找到网站的域名处,选择SESSDATA

用腾讯云图做一个粉丝数据查看器

用腾讯云图做一个粉丝数据查看器

记录这一部分的数值

用腾讯云图做一个粉丝数据查看器

然后再在PHP代码里添加curl的get请求,并且格式化为腾讯云图格式:

$ch =curl_init();
curl_setopt($ch,CURLOPT_URL,'输入API的地址');
//此处输入浏览器Cookie中的SESSDATA,保密!
$sessdata= 
curl_setopt($ch,CURLOPT_COOKIE,$sessdata);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
$response = curl_exec($ch);
//此处输出的是变量,需要Print或者return输出值,但是还需要进一步格式化
$array= array(json_decode($response,true));
//提取data值
$sss = array_column($array, 'data');
$jsona= json_encode($sss);
//格式化
$fin= str_replace("[[","[",$jsona);
$finb= str_replace("]]","]",$fin);
//输出值
print_r($finb);

经过格式化后数据已经正常

用腾讯云图做一个粉丝数据查看器

横纵代表意义去bilibiliAPI的github上查阅

继续阅读
Mrzhou
  • 本文由 发表于 2020年3月17日03:46:03
  • 转载请务必保留本文链接:https://zhouxiaosong.com/1597.html
视频网HTML5播放小工具 脚本编程

视频网HTML5播放小工具

默认支持视频站点:油管、TED、优酷、土豆、QQ、B站、西瓜视频、爱奇艺、A站、PPTV、芒果TV、新浪、微博、网易娱乐、云课堂、新闻、搜狐、风行、百度云视频等; 直播:斗鱼、YY、虎牙、龙珠、战旗;...
Pycharm IDE 安装及注册激活笔记(1) 脚本编程

Pycharm IDE 安装及注册激活笔记(1)

一、Windows 下的安装及激活. 1、首先去Pycharm官网,或者直接进入网址点击进入:,下载PyCharm安装包,根据自己电脑的操作系统进行选择,对于windows系统选择下图的框框所包含的安...
PHP SPL 标准库之 Countable 脚本编程

PHP SPL 标准库之 Countable

本文实例讲述了PHP标准库 (SPL)——Countable用法。分享给大家供大家参考,具体如下: 类实现 Countable 可被用于 count() 函数. 接口摘要 Countable { /*...
匿名

发表评论

匿名网友 填写信息

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: