python调用文件下载接口_python接口自动化21-下载excel文件(Content-Type:octets/stream)...

前言

Content-Type类型为octets/stream,这种一般是文件类型了,比如有时候需要导出excel数据,下载excel这种场景如何用python来实现呢?

抓下载接口

1.下载的场景如下图

2.使用fiddler工具抓包,先找到导出按钮,点导出时候抓包

3.抓到数据如下

代码实现

1.生成excel的路径,如果没指定,会生成在当前脚本同一目录,如果指定的话,修改open里面第一个参数:"yoyo.xls"

2.excel的后缀有些电脑上.xls可能打不开,就改下改成.xlsx

3.代码python2和python3都适用

4.参考代码

# coding:utf-8

import requests

# 作者:上海-悠悠 QQ群:588402570

url = 'http://www.xxx.com/xxx/xxx?begNy=&endNy='

herder = {

"Accept": "text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8",

"Accept-Language": "zh-CN,zh;q=0.8,en-US;q=0.5,en;q=0.3",

"Accept-Encoding": "gzip, deflate",

"Cookie": "你抓到的cookies",

"Connection": "keep-alive"

}

r = requests.get(url, headers=herder)

# open打开excel文件,报存为后缀为xls的文件

fp = open("yoyo.xls", "wb")

fp.write(r.content)

fp.close()

---------------------------------python接口自动化完整版-------------------------

作者:上海-悠悠 QQ交流群:588402570

也可以关注下我的个人公众号:yoyoketang

python接口自动化测试之根据excel中的期望结果是否存在于请求返回的响应值中来判断用例是否执行成功

1.首先在excel中填写好预期结果的值 这里判断接口成功的依据是预期结果值是否存在于接口的返回数据中. 一般接口的返回值都是json对象,我们需要将json对象转换为json格式的字符串 如下图,进 ...

记录python接口自动化测试--把操作excel文件的方法封装起来(第五目)

前面补充了如何来操作excel文件,这次把如何获取excel文件的sheet对象.行数.单元格数据的方法进行封装,方便后面调用 handle_excel.py# coding:utf-8 import ...

前端调用后端接口下载excel文件的几种方式

今天有一个导出相应数据为excel表的需求.后端的接口返回一个数据流,一开始我用axios(ajax类库)调用接口,返回成功状态200,但是!但是浏览器没有自动下载excel表,当时觉得可能是ajax ...

python使用xlrd模块读写Excel文件的方法

本文实例讲述了python使用xlrd模块读写Excel文件的方法.分享给大家供大家参考.具体如下: 一.安装xlrd模块 到python官网下载http://pypi.python.org/pypi ...

python接口自动化(十)--post请求四种传送正文方式(详解)

简介 post请求我在python接口自动化(八)--发送post请求的接口(详解)已经讲过一部分了,主要是发送一些较长的数据,还有就是数据比较安全等.我们要知道post请求四种传送正文方式首先需要先 ...

python接口自动化24-有token的接口项目使用unittest框架设计

获取token 在做接口自动化的时候,经常会遇到多个用例需要用同一个参数token,并且这些测试用例跨.py脚本了. 一般token只需要获取一次就行了,然后其它使用unittest框架的测试用例全部 ...

python接口自动化16-multipart/form-data上传图片

前言 在提交表单操作的时候,经常会遇到图片上传的操作,图片上传是一个单独的接口,本篇以禅道为例,介绍如何上传图片 上传接口 1.以禅道上提交bug为例,在选择图片时,点确定按钮,就是上传图片了 2.用 ...

python接口自动化23-token参数关联登录(登录拉勾网)

前言 登录网站的时候,经常会遇到传token参数,token关联并不难,难的是找出服务器第一次返回token的值所在的位置,取出来后就可以动态关联了 登录拉勾网 1.先找到登录首页https://pa ...

2020年第二期《python接口自动化+测试开发》课程,已开学!

2020年第二期课程,12月15号开学! 主讲老师:上海-悠悠 上课方式:QQ群视频在线教学,方便交流 本期上课时间:12月15号-3月29 ...

随机推荐

Linux下实现秒级的crontab定时任务

crontab的格式如下 * * * * * command 分 时 日 月 周 命令 第1列表示分钟1-59 每分钟用*或者 */1表示 第2列表示小时1-23(0表示0点) 第3列表示日期1-31 ...

csuoj 1119: Collecting Coins

http://acm.csu.edu.cn/OnlineJudge/problem.php?id=1119 1119: Collecting Coins Time Limit: 3 Sec  Memo ...

使用Autolayout对多行文本Label进行布局,高度不准确的解决办法!

BUG描述: 今天公司的项目中发现了一个BUG,大概给大家描述一下,tabbleView有一个tableFooterView,这个footView中有一个Label,是多行显示文本,程序用的是Auto ...

Android APK反编译问题

因为这几天想做一个离线音乐播放器,然后需要很多.png图片,在度娘上搜图片感觉效果不好, 就需要用到反编译工具来将一些.apk文件中的资源文件提取出来. 这里就只讲下怎么使用工具来进行反编译,什么?你 ...

Java之对象池

单例模式是限制了一个类只能有一个实例,对象池模式则是限制一个类实例的个数.对象池类就像是一个对象管理员,它以Static列表(也就是装对象的池子)的形式存存储某个实例数受限的类的实例,每一个实例还要加 ...

Understand User's Intent from Speech and Text

http://research.microsoft.com/en-us/projects/IntentUnderstanding/ Understanding what users like to d ...

自己做的demo---宣告可以在java世界开始自由了

package $interface; public interface ILeaveHome { public abstract int a(); public abstract int b(); ...

HDU 3641 Treasure Hunting(阶乘素因子分解+二分)

题目链接:pid=3641">传送门 题意: 求最小的 ( x! ) = 0 mod (a1^b1*a2^b2...an^bn) 分析: 首先吧a1~an进行素因子分解,然后统计下每一 ...

AX_xSession

Session  xSession = new xSession();  ;  xSession.userId();

HTML学习笔记Day12

一.CSS3基础 (一)css3概念及优势 概念:CSS3是css技术的升级版本,CSS3语言开发是朝着模块化发展的.以前的规范作为一个模块实在是太庞大而且比较复杂,所以,把它分解为一些小的模块,更多 ...

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值