草庐IT

Requests

全部标签

基于python实现Web自动化测试(selenium)、API自动化测试(requests)&附学习视频

目录web自动化API测试1.什么是接口测试?2.内外部接口3.fiddler抓包工具4.Python实现接口测试4.1简单看一下测试文档4.2Requsets库发送http请求4.3检查http响应4.4三种请求消息体格式:XML,urlencode,JSON,5.三种鉴权机制(cookie,session,token)5.1session机制5.2python实现sessionPytest测试框架下常用函数1.yield2.package下的_init_.py3.装饰器(语法糖)-就是函数4.with语句:用于对象上下文的管理另一篇文章:自动化测试框架(pytest)&附学习视频web自动

Python Requests使用Cookie的几种方式

Requests使用Cookie的几种方式一、通过headers参数使用二、通过cookies参数使用三、通过Session会话使用方式0:自动设置方式1:通过key设置方式2:通过set方法设置方式3:通过add_dict_to_cookiejar方法设置方式4:通过RequestsCookieJar()对象设置方式5:通过cookiejar_from_dict方法设置这篇文章将总结PythonRequests库中接口请求时使用Cookie的几种方式,文章使用Postman官网提供的接口进行演示https://postman-echo.com一、通过headers参数使用通过headers参

selenium自动获取cookies用于requests做接口请求爬虫

目录一、思想二、代码         有关爬虫一些报错解决,或是爬虫工具的使用及其他问题的,可以看看我的爬虫专栏:博主_zkkkkkkkkkkkkk的爬虫专栏一、思想    selenium可以用来模拟用户操作的python第三方包,而requests则是用来做接口请求。两者一结合,可能在某些方面优于单个包的爬虫。在requests请求时,我们都知道requests是需要headers信息。所以自动获取cookies等headers里关键信息就至关重要,而selenium因为是打开一个浏览器模拟用户操作的特性,使它能够获取到它自己打开的页面cookies。我们使用这个cookies传入requ

成功解决requests 报错raise SSLError(e, request=request)_requests.exceptions.SSLError_ HTTPSConnectionPool

文章目录问题描述解决思路解决方法问题描述在使用requests调用https接口时,会遇到ssl证书报错raiseSSLError(e,request=request)requests.exceptions.SSLError:HTTPSConnectionPool(host='v4.ketangpai.com',port=443):Maxretriesexceededwithurl:/UserApi/login(CausedbySSLError(SSLCertVerificationError(1,'[SSL:CERTIFICATE_VERIFY_FAILED]certificateverif

RequestContextHolder跨线程获取不到requests请求对象的解决方法

一、前言最近在做一个项目,有个比较耗时的操作是启用线程进行异步操作,当时在启用的线程时,突然发现子线程无法获取父线程中的HttpServletRequest请求对象,因为是第一次遇到这种问题,所以记录一下解决方案。二、问题模拟在这里,我们简单模拟一下出现的问题。我们首先编写一个简单的hello请求,代码如下:/***主线程获取*@return*/@GetMapping("/hello")publicStringhello(){Stringname="";HttpServletRequestrequest=RequestUtils.getRequest();if(null==request){l

requests.exceptions.JSONDecodeError: Expecting value: line 1 column 1 (char 0) 问题解决

前言嗨喽~大家好呀,这里是魔王呐❤~!目录前言爬虫报错展示:报错原因:解决方法:备注:尾语爬虫报错展示:requests.exceptions.JSONDecodeError:Expectingvalue:line1column1(char0)某平台商品评论为例报错原因:这里是获取response.json()获取响应的json字典数据,因为你请求返回的数据不是完整的json数据格式,所以从而导致报错!解决方法:先打印response.text查看返回数据效果当我打印response.text,返回不是完整的json数据,反而多了一部分内容这样的情况,只需要删掉链接或者请求参数里面的callb

requests.exceptions.JSONDecodeError: Expecting value: line 1 column 1 (char 0) 问题解决

前言嗨喽~大家好呀,这里是魔王呐❤~!目录前言爬虫报错展示:报错原因:解决方法:备注:尾语爬虫报错展示:requests.exceptions.JSONDecodeError:Expectingvalue:line1column1(char0)某平台商品评论为例报错原因:这里是获取response.json()获取响应的json字典数据,因为你请求返回的数据不是完整的json数据格式,所以从而导致报错!解决方法:先打印response.text查看返回数据效果当我打印response.text,返回不是完整的json数据,反而多了一部分内容这样的情况,只需要删掉链接或者请求参数里面的callb

python Requests添加Auth和Cert

最近通过postman发起另外一个项目的请求,鉴权较为复杂,首先需要设置cert,postman中设置如下:需要设置basicauth的参数然后将接口返回的token放入auth的bearertoken中。实际使用时发现使用postman的数据驱动功能较为麻烦,而且不利于对测试结果日志采集,于是通过requests实现该功能代码如下requests.post(token_url,auth=HTTPBasicAuth(username,password),cert=(cert_path,key_path),verify=False).textHTTPBasicAuth为设置basicauth的鉴

爬虫怎么在requests中设置自己clash软件的代理ip

在使用Python的requests库时,可以通过设置代理来使用Clash软件提供的代理IP。以下是设置代理IP的步骤:首先,需要确保Clash软件已经安装并且启动,并且在Clash软件中已经添加了需要使用的代理。然后,在Python中使用requests库发送请求时,可以通过设置proxies参数来设置代理。proxies参数是一个字典类型,包含代理的类型和代理的地址。一般本机的Clash软件的HTTP代理地址为127.0.0.1:7890,可以通过以下代码来设置代理:importrequestsproxies={"http":"http://127.0.0.1:7890","https":

Python+Requests模块添加cookie

请求中添加cookies对于某些网站,登录然后从浏览器中获取cookies,以后就可以直接拿着cookie登录了,无需输入用户名密码。一、在参数中添加cookie在发送请求时使用cookies代码示例:importrequests#1,在参数中添加cookie_dict={"login_name":"admin"}#cookie做一个变量,然后再请求中使用cookiesresponse=requests.get(url="http://www.hnxmxit.com",cookies=cookie_dict)查看执行结果: 二、在头部添加cookie在发送请求时使用headers代码示例:#2