需求场景


想要了解每天多少人访问了网站,多少个新增用户,地域分布,点击了哪些页面,停留了多久,等等。。。

国内用的最多的就是百度统计吧,傻瓜式的注册然后插一段代码到项目里就行了。

最近也在自己的博客里使用了百度统计,但是当想要获取这些数据时,看到官方文档,简直想骂人。网上也不是没有代码示例,但清一色的都是java代码,而官网给出的demo也是php,这是要逼死前端吗?


来吧,直接上代码:

1.  获取站点    https://api.baidu.com/json/tongji/v1/ReportService/getSiteList

const router = require('koa-router')()
const fetch = require('node-fetch'); router.get('/siteList', async (ctx, next) => {
let res = await fetch('https://api.baidu.com/json/tongji/v1/ReportService/getSiteList', {
method: 'POST',
body: JSON.stringify({
"header": {
"account_type": "1",
"username": "百度统计账号",
"password": "百度统计登录密码",
"token": "token",
}
})
}).then(res => {
return res.json();
}).then(res => {
ctx.body = {
code: 0,
flag: true,
rows: res.body.data[0].list,
obj: {},
total: 0
}
}).catch(e =>{
ctx.body = {
code: 0,
flag: false,
rows: [],
obj: {},
total: 0
}
})
}); module.exports = router

2. 获取站点数据    https://api.baidu.com/json/tongji/v1/ReportService/getData

const router = require('koa-router')()
const fetch = require('node-fetch'); router.get('/statistics', async (ctx, next) => {
let res = await fetch('https://api.baidu.com/json/tongji/v1/ReportService/getData', {
method: 'POST',
body: JSON.stringify({
"header": {
"account_type": "1",
"username": "百度统计账号",
"password": "百度统计登录密码",
"token": "token",
},
"body": {
"site_id": "12847821",
"method": "overview/getTimeTrendRpt",
"start_date": "20181128",
"end_date": "20251212",
"metrics": "pv_count,visitor_count,ip_count,avg_visit_time",
"gran": "day",
"max_results": "0"
}
})
}).then(res => {
return res.json();
}).then(res => {
ctx.body = {
code: 0,
flag: true,
rows: res.body.data[0].result,
obj: {},
total: 0
}
}).catch(e =>{
ctx.body = {
code: 0,
flag: false,
rows: [],
obj: {},
total: 0
}
})
}); module.exports = router

以上是基于 Koa2 的代码,不懂也没关系,主要是 绿色参数部分,这是官网文档没有写的,前端其它请求方式 ajax、axios、fetch 都可以参考。

百度统计api获取数据的更多相关文章

  1. Python获得百度统计API的数据并发送邮件

    Python获得百度统计API的数据并发送邮件 小工具  本来这么晚是不准备写博客的,当是想到了那个狗子绝对会在开学的时候跟我逼逼这个事情,所以,还是老老实实地写一下吧.   Baidu统计API的使 ...

  2. 百度地图API获取数据

    目前,大厂的服务范围越来越广,提供的数据信息也是比较全的,在生活服务,办公领域,人工智能等方面都全面覆盖,相对来说,他们的用户基数大,通过用户获取的信息也是巨大的.除了百度提供api,国内提供免费AP ...

  3. 百度统计API的使用

    百度统计API的使用 在搭建自己博客的时候,希望自己能有个日志系统,能够看到PV.UV等信息,同时自己也搭建了个ELK系统,可惜服务器配置太低(1GHZ+1G内存),根本运行不起来.只能使用第三方的日 ...

  4. HTML5调用百度地图API获取当前位置并直接导航目的地的方法

    <!DOCTYPE html> <html lang="zh-cmn-Hans">     <meta charset="UTF-8&quo ...

  5. 使用Vue.js和Axios从第三方API获取数据 — SitePoint

    更多的往往不是,建立你的JavaScript应用程序时,你会想把数据从远程源或消耗一个[ API ](https:/ /恩.维基百科.org /维基/ application_programming_ ...

  6. HTML5页面直接调用百度地图API,获取当前位置,直接导航目的地

    <!DOCTYPE html> <html lang="zh-cmn-Hans"> <meta charset="UTF-8"&g ...

  7. Python 读取照片的信息:拍摄时间、拍摄设备、经纬度等,以及根据经纬度通过百度地图API获取位置

    通过第三方库exifread读取照片信息.exifread官网:https://pypi.org/project/ExifRead/ 一.安装exifreadpip install exifread ...

  8. 使用api获取数据————小程序

    使用api获取数据----小程序 onLoad: function (options) { //打开页面即执行. let that = this; wx.request({ //建立链接 url: ' ...

  9. C# WPF从RIOT API获取数据(RIOT代表作品《英雄联盟》)

    微信公众号:Dotnet9,网站:Dotnet9,问题或建议:请网站留言, 如果对您有所帮助:欢迎赞赏. C# WPF从RIOT API获取数据(RIOT代表作品<英雄联盟>) 阅读导航 ...

随机推荐

  1. [转] javascript 保留两位小数 (且不四舍五入)

    本文转自:https://blog.csdn.net/qq_40171039/article/details/79729503 保留两位小数且不四舍五入: 方法一: var a = 2.461; va ...

  2. 第一册:lesson eighty nine.

    原文: For sale. A:Good afternoon. I believe that the house is for sale. B:That's right. A:May I have a ...

  3. [日常] HTTP连接管理

    HTTP连接管理: 1.误解的Connection首部 当http报文经过中间客户端到服务端中间的各种代理设备时,对标签中列出的头信息进行删除,close是事务结束后关掉此条连接 2.消除串行化的时延 ...

  4. SpringBoot登录登出切面开发

    阅读本文约“2.5分钟” 本文开发环境是SpringBoot2.X版本. 对于系统而言(这里多指管理系统或部分具备登录登出功能的系统),登录登出是一个类权限验证的过程,现在一般是以token进行校验, ...

  5. 你所不知道的JSON.stringify

    译者按: 老司机们,你知道JSON.stringify还有第二个和第三个可选参数吗?它们是什么呢? 原文: What you didn’t know about JSON.Stringify 译者: ...

  6. 用js实现超链接导航菜单点击切换选中时的状态

    项目中使用到点解导航切换不同的颜色,如果只是li选项卡还好办,这次用到的超链接选项卡,因为a链接每次点击都会刷新,所以浏览器记不住点击的状态,也没法切换点击状态,因为项目中有好多地方要用到,在网上找了 ...

  7. django请求和响应

    本文转载自https://blog.csdn.net/xiaogeldx/article/details/88096341 HttpRequest对象 服务器接收到http协议的请求后,会根据报文创建 ...

  8. 一位ML工程师构建深度神经网络的实用技巧

    一位ML工程师构建深度神经网络的实用技巧 https://mp.weixin.qq.com/s/2gKYtona0Z6szsjaj8c9Vg 作者| Matt H/Daniel R 译者| 婉清 编辑 ...

  9. win7下利用ftp实现华为路由器的配置文件上传和下载

    win7下利用ftp实现华为路由器的配置文件上传和下载 1.  Win7下ftp的安装和配置 (1)开始—>控制面板—>程序—>程序和功能—>打开或关闭Windows功能 (2 ...

  10. 3Delight feats. OpenVDB

    Full GI, no multiple scattering now (no point-cloud similar solution in 3Delight now) Blackbody Cart ...