用python喝个毒鸡汤

沙雕app

以前很闲,特喜欢在沙雕APP上闲逛,最近又去看了看,发现它还给API了,这直接让我毫无关联的两个兴趣在量子层面关联了起来.请添加图片描述
请添加图片描述
我一看,这不就是一个最最最简单的爬虫吗,我就想着刚好拿着写个爬虫入门.
那么下面,就让我们一起用python,喝一碗毒鸡汤吧!

Begin

首先,我们要选择一个合适的语言,根据我细(hú)心(luàn)的思考,我选择用python的requests库.

Second

然后,我们就要进行一番剖析,这个程序的原理主要如下,十分简单:

  1. 向接口发送一个get请求,拿到返回值
  2. 用json库解析返回值
  3. 提取输出我们需要的信息

Third

理论存在,拾剑开屎
这个项目用到了requests第三方库,需要用pip指令自行下载

pip install requests

首先,我们用request库发送get请求

from requests import get

url = 'https://api.shadiao.pro/du'
ret = get(url)
print(ret.text)

给出了这样的输出:
请添加图片描述
这让我属实没太想到,它是以unicode编码返回的
我用站长工具看了看请添加图片描述
没问题
那我们就先把他解析,然后再考虑unicode转文字吧
解析用到了json库,他可以把json形式的字符串转换为python字典形式.
解析之前,我们先要分析一下返回的json格式

{
	"data":{
		"type":"\u6bd2\u9e21\u6c64",
		"text":"\u6211\u80fd\u60f3\u5230\uff0c\u5bf9\u81ea\u5df1\u6700\u51c6\u786e\u7684\u5f62\u5bb9\u8bcd\u53ea\u6709\uff1a\u80a5\u7f8e\u3002"
	}
}
在整个json对象里,data键所对应的值又是一个json对象,在date键值对所对应的那个json对象中text便是我们要喝的毒鸡汤.

不知道json的兄弟可能听得有点晕,json对象就是python字典,date键就相当于python字典中的一个键.

接下来,我们就开始解析吧

from requests import get
import json

url = 'https://api.shadiao.pro/du'
ret = get(url)
ret = json.loads(ret.text)
print(ret)

请添加图片描述
这个过程中,我们不仅将json字符串转换为了python字典,还惊奇的发现,原本的unicode编码经过json.loads()方法的洗礼后,棱角还被顺便磨平了,变回了正常的字符.
接下来,我们只需要:

ret["data"]["text"]

就可以喝到纯净的毒鸡汤了
这样,一个喝毒鸡汤的python程序就写好了,是不是异常简单?
完整代码如下:

from requests import get
import json

url = 'https://api.shadiao.pro/du'
ret = get(url)
ret = json.loads(ret.text)
print(ret["data"]["text"])

经过不懈努力,我们也是终于喝到了我们的毒鸡汤!
看看是什么吧!
请添加图片描述

  • 9
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值