内容正文:
少儿编程课
1
初识HTTP协议
我们先来学习HTTP协议。那么什么是协议呢?
3
微信和知乎,背后通讯的过程大致如下:
微信服务器
微信
知乎服务器
知乎
知乎/今日头条/抖音
服务器
(Java、PHP等)
知乎/今日头条/抖音
客户端
(Android、IOS、浏览器页面、桌面应用)
知乎/今日头条/抖音
数据库
(MySQL、Oracle等)
请求request
响应response
接收请求
发起数据库连接
从数据库取得数据
数据转为JSON
接收JSON数据
解析JSON
展示到页面上
HTTP协议:请求+响应
我们个人能做新闻类/天气类客户端吗?
公共服务端
答案是可以的!一些企业和政府机构已经提供了公共的数据:
天气预报客户端
每日新闻客户端
人脸识别客户端
英文翻译客户端
……客户端
天气预报服务端
每日新闻服务端
人脸识别服务端
英文翻译服务端
……服务端
公
共
服
务
端
公共服务端
那么我们如何使用这些公共的服务呢?通过网址
天气预报客户端
每日新闻客户端
人脸识别客户端
英文翻译客户端
……客户端
天气预报服务端
每日新闻服务端
人脸识别服务端
英文翻译服务端
……服务端
www.1.com
www.2.com
www.3.com
www.4.com
www.5.com
公
共
服
务
端
这个过程就和去食堂吃饭一样,想吃什么就去对应的窗口,网址就相当于是打饭的窗口,这里称为接口
{
"code": 200,
"msg": "success",
"newslist": [
{
"ctime": "2016-07-12 13:36",
"title": "外媒:特雷莎-梅赢得首相之职 但将面临脱欧硬仗",
"description": "搜狐国际",
"picUrl": "http://photocdn.sohu.com/20160712/Img458833600_ss.png",
"url": "http://news.sohu.com/20160712/n458855349.shtml"
},
{
"ctime": "2016-07-12 11:17",
"title": "废弃肉饼流入市场 日本警方逮捕三名嫌犯",
"description": "搜狐国际",
"picUrl": "http://photocdn.sohu.com/20160712/Img458826696_ss.jpeg",
"url": "http://news.sohu.com/20160712/n458828803.shtml"
}
]
}
Json数据
接口地址
http://apistore.baidu.com/apiworks/servicedetail/823.html
来看下新闻APP如何来做
这些数据接口都能在哪找到呢?
showapi:https://www.showapi.com
海航数据开放平台:https://data.hnagroup.com/
idataapi:http://www.idataapi.cn
深圳市政府数据开放平台:http://opendata.sz.gov.cn
成都市公共数据开放平台:http://www.cddata.gov.cn/
广东省数据开放平台:http://www.gddata.gov.cn/
聚合数据:https://www.juhe.cn
淘宝数据开放平台:http://open.taobao.com
阿里、百度、讯飞、图灵机器人、。。。。。。。
Requests库下载安装
11
requests是一个第三方库,用来完成HTTP请求,获取网络数据
1
首先是requests的下载
2
按下回车,将会自动下载安装
安装完成之后,来看一下requests库的简单使用,先来看这样一个网站:
http://www.httpbin.org
这个网站能测试 HTTP 请求和响应的各种信息,比如 cookie、ip、headers 和登录验证等
且支持 GET、POST 等多种方法,对 web 开发和测试很有帮助
GET请求
14
先来试一下简单的GET请求
1
导入requests库
2
使用get方法去请求网站,将结果输出
import requests
res = requests.get('http://www.httpbin.org