【电商API接口的应用:电商数据分析入门】初识Web API(一)

news2024/11/18 0:25:59

如何使用Web应用变成接口(API)自动请求网站到特定信息而不是整个网站,再对这些信息进行可视化。由于这样编写到程序始终使用最新到数据来生成可视化,因此即便数据瞬息万变,它呈现到信息也都是最新的。

图片

图片

图片

使用Web API

Web API是网站的一部分,用于与使用非常具体的URL请求特定信息定程序交互。这种请求称为API调用。请求的数据将以易于处理的格式(如JSON或CSV)返回。依赖于外部数据源的大多数应用程序都依赖于电商API调用,如集成社交媒体网站的应用程序。

图片

图片

图片

Git和Github

本章的可视化将基于来自Github的信息,这是一个让程序员能够协作开发项目的网站。我们将使用Github的API来请求有关该网站中Python项目的信息,然后使用Pygal生成交互式可视化,以呈现这些项目的受欢迎程度。关于Git的详细内容,后续我会出一篇独立的分享,这次我们只使用Github的API就可以啦。

图片

图片

图片

使用API调用请求数据

Github的API让你能够通过API调用来请求各种信息,要知道API调用是什么样的,请在浏览器地址栏输入如下地址并回车:

https://api.github.com/search/repositories?q=language:python&sort=stars

这个调用返回GitHub当前托管了多少个Python项目,还有有关最受欢迎的Python仓库的信息。下面来仔细研究这个调用。第一部分(https://api.github.com/)将请求发送到GitHub网站中响应API调用的部分:接下来的一部分(search/repositories)让API搜索GitHub上的所有仓库。

repositories后面的问号指出我们要传递一个实参。q表示查询,而等号让我们能够开始指定查询(q=)。通过使用language:python,我们指出只想获取主要语言为Python的仓库信息。最后一部分(&sort = stars)指定将项目按其获得的星级进行排序。

下面显示来响应的一部分,从响应可知,该URL并不适合人工输入。

图片

从第二行可知,目前GitHub总共有6174026个Python项目。“incomplete_results” 的值为True,证明GitHub无法全面处理该API,这里我们只分析部分数据。接下来的列表中展示了返回的“items”,其中包含GitHub上最受欢迎的Python项目的详细信息。

图片

图片

图片

安装requests

requests包让Python程序能够轻松地向网站请求信息以及检查返回的响应,首先来新建一个项目并安装requests包。

pip3 install requests

处理API响应

下面来编写一个程序,它执行API调用并处理结果,找出GitHub上星级最高的Python项目:

import requests#执行API调用并存储响应url='https://api.github.com/search/repositories?q=language:python&sort=stars'r = requests.get(url)print("Status code:",r.status_code)#将API响应存储在一个变量中response_dict = r.json()#处理结果print(response_dict.keys())

首先我们导入模块requests,接着我们存储API调用的URL,然后使用requests来进行调用。我们调用get()并将URL传递给它,再将响应对象存储在变量r中。响应对象包含一个名为status_code的属性,它让我们知道请求是否成功了(状态码200表示成功)。最后我们使用方法json()将这些信息转换为一个Python字典,并将转换得到的字典存储在response_dict中,打印response_dic中的键,输出如下:

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1077460.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

javapoet 注释中添加枚举值

问题描述 使用javapoet生成源代码 为了实现这么一个目的 解决 翻了一下源代码,他的实现如下: 这个方法是私有的,暂时不确定如何调用 照着这个方法,即可实现大多数类型的基本调用 即可实现上图需要的效果

为Yolov7环境安装Cuba匹配的Pytorch

1. 查看Cuba版本 方法一 nvidia-smi 找到CUDA Version 方法二 Nvidia Control Panel > 系统信息 > 组件 > 2. 安装Cuba匹配版本的PyTorch https://pytorch.org/get-started/locally/这里使用conda安装 conda install pytorch torchvision torchaudio pytorch-cu…

[华为认证]路由表和FIB表

路由器转发数据包的关键是路由表和FIB表,每个路由器都至少保存着一张路由表和一张FIB(Forwarding Information Base)表。路由器通过路由表选择路由,通过FIB表指导报文进行转发。 路由表 每台路由器中都保存着一张本地核心路由表&…

Java学数据结构(4)——PriorityQueue(优先队列) 二叉堆(binary heap)

前言 数据结构与算法作为计算机科学的基础,是一个重点和难点,在实际编程中似乎看不它们的身影,但是它们有随处不在,如影随形。 本系列博客是《数据结构与算法分析—Java语言描述》的读书笔记,合集文章列表如下&#…

delphi socket cross开源跨平台通讯库

delphi socket cross是Pascal开源跨平台的tcp通讯组件 windows下用的iocp linux下用的epoll 支持http,https 开源地址:GitHub - winddriver/Delphi-Cross-Socket: Delphi cross platform socket library 下图来自网络:

陪诊系统|陪诊系统解放繁琐,为陪诊添便利

在当代快节奏的生活中,随着医疗服务的不断发展,陪诊成为了越来越多人的需求。然而,传统的陪诊方式却存在着时间成本高、沟通不畅、服务体验差等问题。但近年来,陪诊小程序的兴起却为这一难题提供了创新的解决方案。 陪诊小程序&a…

Congestion Control for Large-Scale RDMA Deployments

文章目录 IntroductionDCQCNBuffer Setting Introduction PFC是粗粒度的流量控制机制,在端口层面发挥作用,不区别不同的流。这会导致很多弊端,比如不公平,受害流等。 解决PFC限制的解决方法是flow-level的拥塞控制,D…

拥抱AI变革,实现企业数字化重生!

在当今这个数字化快速发展的时代,人工智能(AI)正在逐渐成为企业转型的核心驱动力。本文将探讨AI如何在企业数字化转型中发挥重要作用,以及应对数字化转型中可能出现的风险和挑战。 目前,企业数字化转型的趋势日益明显…

如何更改照片底色(免费)

一、小程序截图 ①微信上找证件照的小程序,比如“独九证件照” ②换底色然后上传照片: ③ 原图: 换底色后的图: ④截图: ⑤裁剪 然后就得到免费的换底片后的证件照了。 二、PS修改 方法一(更建议用&…

VueRouter与expres/koa中间件的关联

ueRouter: runQueue 路由守卫都是有三个参数to,from,next。其中next就是下方的fn执行时候传入的第二个参数(回调函数),只有该回调执行后才会挨个遍历queue内的守卫。 中间件的作用 隔离基础设施与业务逻辑之间的细节。详细的内容位于《深入浅出Node.js》P210 另外一…

408-2014

一、单项选择题 1.下列程序段的时间复杂度是_______。 count0; for(k1;k<n;kk*2)for(j1;j<n;j)count; A.O() B.O(n) C.O() D.O(n*n) 解答&#xff1a;C 外层循环的时间复杂度为 O() &#xff0c;内层循环的时间复杂度为 O(n)&#xff0c;因此结果…

Matlab图像处理——基于机器视觉的苹果中心花及边花识别

一、简介 基于机器视觉技术&#xff0c;实现苹果中心花及边花识别&#xff0c;并将程序集合为GUI界面&#xff0c;在界面上完成相应的操作。实现了对图像进行预处理&#xff0c;分割出花心和边花&#xff0c;然后统计边花的数量。并且可以根据自己的需求和图像的特性来调整阈值…

idea中使用git【图文详解】

配置 配置Git 设置——Version Control——Git——Path to Git executab【D:\Git\Git\bin\git.exe】 创建Git查看 最上面VCS——Create Git Repository 添加忽略项 安装ignore插件&#xff1a;设置——plugins——搜索ignore 新建ignore文件&#xff1a;右击项目——new——.…

Hazelcast系列(三):hazelcast集成(服务器/客户端)

系列文章 Hazelcast系列(一)&#xff1a;初识hazelcast Hazelcast系列(二)&#xff1a;hazelcast集成&#xff08;嵌入式&#xff09; Hazelcast系列(三)&#xff1a;hazelcast集成&#xff08;服务器/客户端&#xff09; Hazelcast系列(四)&#xff1a;hazelcast管理中心 …

紫光同创FPGA 多路视频处理:图像缩放+视频拼接显示,OV7725采集,提供PDS工程源码和技术支持

目录 1、前言免责声明 2、相关方案推荐FPGA图像缩放方案推荐FPGA视频拼接叠加融合方案推荐紫光同创FPGA图像采集方案推荐紫光同创FPGA图像缩放方案推荐紫光同创FPGA视频拼接方案推荐 3、设计思路框架为什么选择OV7725摄像头&#xff1f;视频源选择OV7725摄像头配置及采集动态彩…

JUC学习笔记

基础知识 线程 线程是进程中的一个实体&#xff0c;线程本身是不会独立存在的。一个进程中至少有一个线程&#xff0c;进程中的多个线程共享进程的资源。 进程 是程序的一次执行&#xff0c;是系统进行资源分配和调度的基本单位。每一个进程都有自己独立的内存空间和系统资…

2023年下半年WSK-PETS5报名启动

2023年下半年全国外语水平考试&#xff08;WSK-PETS5&#xff09;网上报名时间为10月17日9时-10月19日16时&#xff0c;知识人网小编特别提醒考生注意报名截止时间是16点&#xff08;下午4点&#xff09;&#xff0c;切勿错过&#xff01; 国家公派留学人员全国外语水平考试&am…

2023年【陕西省安全员B证】考试试卷及陕西省安全员B证模拟考试

题库来源&#xff1a;安全生产模拟考试一点通公众号小程序 陕西省安全员B证考试试卷是安全生产模拟考试一点通总题库中生成的一套陕西省安全员B证模拟考试&#xff0c;安全生产模拟考试一点通上陕西省安全员B证作业手机同步练习。2023年【陕西省安全员B证】考试试卷及陕西省安…

2023全网最全requests库和requests模块使用详解(建议收藏)

一、requests简介 #简介&#xff1a;使用requests可以模拟浏览器的请求&#xff0c;比起之前用的urllib&#xff0c;requests模块的api更加便捷&#xff08;本质就是封装了urllib3&#xff09;#注意&#xff1a;requests库发送请求将网页内容下载下来以后&#xff0c;并不会执…

适用于音视频的弱网测试整理

一、什么是弱网环境 对于弱网的定义&#xff0c;不同的应用对弱网的定义是有一定的差别的&#xff0c;不仅要考虑各类型网络最低速率&#xff0c;还要结合业务场景和应用类型去划分。按照移动的特性来说&#xff0c;一般应用低于2G速率的都属于弱网&#xff0c;也可以将3G划分…