写了几行平平无奇的代码,想要获取json数据

import requestsurl=‘https://image.baidu.com/search/acjson?tn=resultjson_com&logid=10924524703716171320&ipn=rj&ct=201326592&is=&fp=result&queryWord=%E9%87%91%E5%9F%8E%E6%AD%A6&cl=2&lm=-1&ie=utf-8&oe=utf-8&adpicid=&st=-1&z=&ic=&hd=&latest=&copyright=&word=%E9%87%91%E5%9F%8E%E6%AD%A6&s=&se=&tab=&width=&height=&face=0&istype=2&qc=&nc=1&fr=&expermode=&nojc=&cg=star&pn=60&rn=30&gsm=3c&1635587116468=’resp=requests.get(url)    json_data=resp.json()

然后就报错了:requests.exceptions.TooManyRedirects: Exceeded 30 redirects.

根据网友的解答加上了allow_redirects=False

因为错误显示重定向超过三十个,因此allow_redirects=False,关闭重定向

此时代码变成了:

import requestsurl=‘https://image.baidu.com/search/acjson?tn=resultjson_com&logid=10924524703716171320&ipn=rj&ct=201326592&is=&fp=result&queryWord=%E9%87%91%E5%9F%8E%E6%AD%A6&cl=2&lm=-1&ie=utf-8&oe=utf-8&adpicid=&st=-1&z=&ic=&hd=&latest=&copyright=&word=%E9%87%91%E5%9F%8E%E6%AD%A6&s=&se=&tab=&width=&height=&face=0&istype=2&qc=&nc=1&fr=&expermode=&nojc=&cg=star&pn=60&rn=30&gsm=3c&1635587116468=’resp=requests.get(url,allow_redirects=False)    json_data=resp.json()

然而还是报错了:json.decoder.JSONDecodeError: Expecting value: line 1 column 1 (char 0)

看来得解码,于是:

resp=requests.get(url,allow_redirects=False).content.decode('utf-8')

又报错:因为解码后不再是response了,所以不具有json()方法

因此问题不是出在解码上,而是get()并没有成功运行得到response。

真正的问题在关闭了重定向以后,页面不再跳转。

简单来说就是没有与服务器建立会话,页面重定向成了环形的死循环。即你的原始URL重定向一个没有新​​的URL B,其重定向到C,它重定向到B,等​​等。

文章的结尾提到加请求头来保持会话的持久性。

http头部没有编码方式,requests默认使用自己的编码方式。也是很任性,具体关于requests的乱码行为的出现原因及解决方案,在这篇博客有详细介绍,可以看一下。

https://www.cnblogs.com/billyzh/p/6148066.html。

正确的代码:

import requestsurl=‘https://image.baidu.com/search/acjson?tn=resultjson_com&logid=10924524703716171320&ipn=rj&ct=201326592&is=&fp=result&queryWord=%E9%87%91%E5%9F%8E%E6%AD%A6&cl=2&lm=-1&ie=utf-8&oe=utf-8&adpicid=&st=-1&z=&ic=&hd=&latest=&copyright=&word=%E9%87%91%E5%9F%8E%E6%AD%A6&s=&se=&tab=&width=&height=&face=0&istype=2&qc=&nc=1&fr=&expermode=&nojc=&cg=star&pn=60&rn=30&gsm=3c&1635587116468=’resp=requests.get(url,allow_redirects=False,headers=headers)    json_data=resp.json()

requests关于Exceeded 30 redirects相关推荐

  1. requests.exceptions.TooManyRedirects: Exceeded 30 redirects

    requests.exceptions.TooManyRedirects: Exceeded 30 redirects https://blog.csdn.net/weixin_42081389/ar ...

  2. python requests 重新定向错误 requests.exceptions.TooManyRedirects: Exceeded xx redirects 解决方法

    在抓取steam游戏名称时发现以下错误: requests.exceptions.TooManyRedirects: Exceeded 30 redirects 错误提示是requests库有太多的重 ...

  3. python 爬虫 requests 错误汇总

    1.发生异常: ProxyError HTTPSConnectionPool(host='www.baidu.com', port=443): Max retries exceeded with ur ...

  4. 图片的批量下载 和 爬虫爬取图片数据集

    图片的批量下载 和 爬虫爬取图片数据集 1.图片的批量下载 1.图片的批量下载 数据集是深度学习的一切,没有数据集它什么也不是,现在你知道数据集很重要了吧 代码: ''' 项目名称:爬取公章数据 创建 ...

  5. Python爬虫之自动下载图片

    对大佬的图片下载器的小程序很感兴趣,故运行了一下代码块,发现会报类似下图中的Exceeded 30 redirects错. 故重新编写了一个访问函数来实现图片下载功能,不过还是要感谢大佬很有趣的ide ...

  6. 2021年1月6日订阅朋友的问题与解决方案汇总

    文章目录 Traceback (most recent call last): requests.exceptions.TooManyRedirects: Exceeded 30 redirects. ...

  7. 1499飞天茅台脚本使用过程中遇到的Python问题汇总索引目录【淘宝-天猫超市、京东】

    1499飞天茅台脚本使用过程中遇到的Python问题汇总索引目录[淘宝-天猫超市.京东] 1499飞天茅台脚本使用过程中遇到的Python问题汇总索引目录[淘宝-天猫超市.京东] @[TOC] 原文地 ...

  8. 面试系统设计_系统设计面试问题–您应该知道的概念

    面试系统设计 You may have heard the terms "Architecture" or "System Design." These com ...

  9. 监控prometheus-2

    prometheus-2 来源:官方文档. 配置文件 要指定要加载的配置文件,请使用--config.file标志. 该文件以YAML 格式编写,由下面描述的方案定义.括号表示参数是可选的.对于非列表 ...

  10. 【云原生学习】史上最全Prometheus学习笔记

    文章目录 Prometheus使用 一.Prometheus基本概念 1.1 特点 1.2 相关组件 1.3 架构 1.4 四种指标 1.5 Promethues的数据模型 1.5.1 作业和实例 二 ...

最新文章

  1. java for 跳过_在for循环中跳过错误
  2. Science公布年度十大科学突破!新冠疫苗居首位
  3. C# .NET Web API 如何自訂 ModelBinder
  4. 速来围观MOS管的选择步骤
  5. @产品部 -- 腾讯策划部是如何培养用户的《王者荣耀》“瘾”的
  6. C Primer Plus(第五版)7
  7. php 离线 gis,在 Web 页面中使用离线地图
  8. IBASE text component
  9. HTML常见标签总结
  10. [html] 举例说明锚点定位有什么作用?
  11. 替换元素节点replaceChild()
  12. bigdecimal 小于等于0_半场0-0比分的比赛,你需要注意这些
  13. 2.5、调用后置处理器
  14. nodejs,python,sublime和Eclipse的包管理器 1
  15. 交叉表 mysql_MySql交叉表
  16. Win10编译OpenJDK源码
  17. Vimium 是做什么的?不得不服
  18. 会计专业计算机工具,会计工作需要用哪些工具
  19. 苹果手机实现NTU校园网连接自动化
  20. k8s修改默认命名空间

热门文章

  1. 高等数学:对向量及其线性运算和数量积、向量积的见解
  2. 身份证二要素,帮你轻松搞定实名认证
  3. c语言汇率转换代码_拜求c语言编写的人民币大小写转换的代码!
  4. BMP图像位图法隐藏信息
  5. 小程序返回页面报错:navigateBack:fail cannot navigate back at first page.
  6. NShape(开源矢量图形编辑器) 入门(三)
  7. Vue Tags Input
  8. vim学习笔记-tags用法
  9. perl php-serialization install,如何在PHP中反序列化Perl Data :: Dumper输出
  10. ubuntu死机咋办_ubuntu16.04经常死机 ubuntu电脑经常死机如何解决