【Python 爬虫 CASE】使用新榜API获取数据

一、需求

每日获取新榜网站收藏的微信公众号对应的【点赞数、排名、头条阅读数】

二、实现-分解

1)获取新榜api

打开并登录新榜网站-数据服务-数据API
点击试用即可,到达控制台,你的账号就获得API密钥,以及2000unit额度
在这里插入图片描述

2)发送HTTP请求

点击“查看文档”,跳转到接口列表,这里可以看到每种接口单次消耗unit数,选择所需的平台接口,我需要的是“微信-榜单-公众号历史榜单”
阅读api说明以及相关参数
在这里插入图片描述在这里插入图片描述

import requests
url_api='https://api.newrank.cn/api/sync/weixin/rank/account/day'
headers={'Key':'xxxxxxxxxxxxxxxxxxx'}
body={'account':'要查询的微信号','from':'2019-11-03','to':'2019-11-02'}
response=requests.post(url_api,data=body,headers=headers)#请求方式:POST,Content-Type:application/x-www-form-urlencoded;charset=utf-8
response.json()

在这里插入图片描述

三、实现-整合

import requests
import datetime
import sys
def main(dnum):
    ystday=(datetime.date.today()-datetime.timedelta(days=1)).strftime('%Y-%m-%d')#昨天
    date=(datetime.date.today()-datetime.timedelta(days=int(dnum))).strftime('%Y-%m-%d')#dnum天前
    url_api='https://api.newrank.cn/api/sync/weixin/rank/account/day'
    headers={'Key':'xxxxxxxxxxxxxxxxxxxxxxxxx'}


    def condata(account):
        body={'account':account,'from':date,'to':ystday}
        response=requests.post(url_api,data=body,headers=headers)#请求方式:POST,Content-Type:application/x-www-form-urlencoded;charset=utf-8
        all_con=account+'\n'
        for i in range(len(response.json()['data'])-1,-1,-1):
            con=str(response.json()['data'][i]['articleLikesCount'])+'\t'+\
                str(response.json()['data'][i]['rankPosition'])+'\t'+\
                str(response.json()['data'][i]['articleClicksCountTopLine'])+'\t'+\
                response.json()['data'][i]['rankDate'][0:10]+'\n'
            all_con=all_con+con
        return all_con

    f=open(r'G:\temp files\xb.txt','w')
    f.write(condata('yyyyyyyyyy')+condata('zzzzzzzz'))
    f.close()



if __name__=='__main__':
    try:
        main(sys.argv[1])
    except:
        main(1)#默认昨天1天
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值