python 获取接口数据 并保存在Excel文档中

以豆瓣为例,仅供学习参考,如有侵权则通知删除;
大致的思路是:

获取接口数据 –> 转存为txt文档 –> 将文档转为json格式 –> 使用pandas转为DataFrame –> 使用DataFrame存储Excel

接口怎么抓,入参如何做不在此赘述,主要分享主流程
下面进行步骤拆解

利用http接口获取数据

1、利用接口拼参,使用”{}”,配合 .format() 函数来构成遍历网页的目的;
2、最后输出的内容是在列表基础上的字典格式,直接使用pandas的DataFarme进行编译;
3、再将DataFareme的数据写入Excel中完成数据的获取

from urllib.request import Request, urlopen
from fake_useragent import UserAgent

base_url = "https://movie.douban.com/j/chart/top_list?type=11&interval_id=100%3A90&action=&start={}&limit=20"
# 利用{},配合 .format() 函数来构成遍历网页的目的
i = 0
while True:
    # 构造请求头
    headers = {
        "User-Agent": UserAgent().chrome
    }
    # 构造url链接地址,并对连接进行遍历
    url = base_url.format(i * 20)
    # 构造请求
    request = Request(url, headers=headers)
    # 构造 响应
    response = urlopen(request)
    # 响应数据代码化
    info = response.read().decode()
    # 遍历输出代码化的响应
    print(info)
    break
#     if info == "" or info is None:
#         break
#     i += 1

print(type(info))

可以由输出的内容和查看的类型,数据格式为”str“

 

直接将字符串内容转存为文件

# 文件的路径必须正确,但是文件不必提前创建好
f_w = open('./新建文档.txt','w',encoding="utf8")

f_w.write(info)
f_w.close()

 

或者直接将json的数据存下来,直接导进某个文件

import json
import pandas as pd

# 用 open 定义一个文档对象
f = open("./新建文档.txt","r",encoding = "utf8")
print(type(f))    # 这是一个文件对象

# 对文档对象进行 json 解码,解码后,本质是一个"字典对象"
json_data = json.load(f)
print(type(json_data))

 

直接对字典对象进行DataFrame

aa = pd.DataFrame(json_data)
aa

 

将 DataFrame 保存在成Excel

直接用DataFrame.to_XX 即可

#文件路径必须正确,文件可以生成
aa.to_excel("./ceshi(1).xlsx",sheet_name="测试",encoding="utf-8")

# 顺带查看文件是否存储,文件位置在哪儿
os.listdir()
os.getcwd()

 

© 版权声明
THE END
喜欢就支持一下吧
点赞39
分享
相关推荐
  • 暂无相关文章
  • 评论 抢沙发