requests - timeout
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了requests - timeout相关的知识,希望对你有一定的参考价值。
参考技术A 为防止服务器响应缓慢,导致客服端处理异常,requests请求大多设置 timeout 参数。Requests中 timeout 不设置默认值 。Timeout 类型:
客户端timeout 秒内从基础套接字上必须接收到第一个字节的数据, 否则抛出超时异常。
timeout 设置单一的值,将会用作 connect 和 read 二者的 timeout。
如果要分别制定,就需要传入一个元组。
如果需要让 request 永远等待,则传入一个 None 作为 timeout 的值。
参考: requests
已解决TypeError: search() got an unexpected keyword argument ‘requests_timeout’
已解决(elasticsearch模块报错)TypeError: search() got an unexpected keyword argument ‘requests_timeout’
文章目录
报错代码
粉丝群里面的一个小伙伴想用elasticsearch 模块读取数据,但是发生了报错(当时他心里瞬间凉了一大截,跑来找我求助,然后顺利帮助他解决了,顺便记录一下希望可以帮助到更多遇到这个bug不会解决的小伙伴),报错代码如下::
from elasticsearch import Elasticsearch
es = Elasticsearch(["host": "服务器地址", "port": 端口号])
print(es.ping)
body = 'match':'name':'小鹏'
data = es.search(index='库名',doc_type='表名',body=body,size=10,requests_timeout=60)
print(data)
可以看到导包和传参没有任何问题,但是还是报错了:
报错信息如下:
报错翻译
报错信息翻译:
类型错误:search()获得意外的关键字参数“requests_timeout”
报错原因
报错原因:
这是由于elasticsearch 版本更新导致的,粉丝使用的版本是: 5.5.3,就没有了requests_timeout这个参数了
解决方法
解决方法1:去掉requests_timeout参数查询即可
data = es.search(index='库名',doc_type='表名',body=body,size=10)
解决方法2:安装其他版本的elasticsearch 模块,可以尝试更新版本,或者安装低版本的试试
帮忙解决
本文已收录于:《告别Bug》专栏
本专栏用于记录学习和工作中遇到的各种疑难Bug问题,以及粉丝群里小伙伴提出的各种问题,文章形式:报错代码 + 报错翻译 + 报错原因 + 解决方法,包括程序安装、运行程序过程中等等问题,订阅专栏+关注博主后如遇到其他问题可私聊帮忙解决!!!
以上是关于requests - timeout的主要内容,如果未能解决你的问题,请参考以下文章
request.getScheme() request.getServerName() request.getServerPort() request.getContextPath()(示例(代码
request.getParameter()request.getInputStream()和request.getReader()
request.getParameter() request.getInputStream()和request.getReader()三者的区别
Python爬虫 requests -- requests的安装和基本使用requests的get请求 / post请求requests ip代理