当前位置: 首页 > news >正文

python包重要修改

akshare\stock_feature\stock_hist_em.py

源码:

    r = requests.get(url, params=params, timeout=timeout)
    data_json = r.json()

修改后:

import time
def fetch_data_with_retries(url, params=None, retries=10, delay=2, timeout=10):
    """
    尝试多次请求,直到成功或达到最大重试次数。
    :param url: 请求的URL地址
    :param params: 请求参数
    :param retries: 最大重试次数
    :param delay: 每次重试之间的等待时间(秒)
    :param timeout: 请求超时时间(秒)
    :return: 返回JSON数据
    """
    for attempt in range(retries):
        try:
            r = requests.get(url, params=params, timeout=timeout)
            r.raise_for_status()  # 如果响应码不是200,则抛出异常
            data_json = r.json()  # 获取返回的JSON数据
            return data_json
        except requests.exceptions.RequestException as e:
            print(f"请求失败 ({attempt + 1}/{retries}): {e}. 正在重试...")
            time.sleep(delay)  # 等待一段时间后重试
    # 如果所有尝试都失败了,抛出异常
    raise Exception("最大重试次数已超过,请检查网络连接或API服务。")

data_json = fetch_data_with_retries(url, params=params, retries=10, delay=3)
http://www.dtcms.com/a/32123.html

相关文章:

  • 如何把windows机器作为SSH客户端免密登录
  • Markdown使用方法文字版解读
  • 数据表的存储过程和函数介绍
  • OpenBMC:BmcWeb app.run
  • tortoiseGit的使用和上传拉取
  • 使用docker开发镜像编译
  • pytest下allure
  • 医院安全(不良)事件上报系统源码,基于Laravel8开发,依托其优雅的语法与强大的扩展能力
  • 更换node版本
  • LLM:Agent
  • 【多模态处理篇四】【DeepSeek跨模态检索:联合嵌入空间构建方案 】
  • Ruby Dir 类和方法详解
  • UE求职Demo开发日志#35、36 搬boss和主线任务自动接逻辑
  • 【3.6JavaScript】JavaScript数组对象
  • Educational Codeforces Round 174 (Rated for Div. 2)(部分题解)
  • Next.js 学习-1
  • 深入解析过滤器模式:数据筛选与处理的高效工具
  • 我们来学人工智能 -- DeepSeek客户端
  • 一文读懂大模型文件后缀名,解锁 AI 世界的密码
  • 【部署优化篇十四】【十万字全景拆解:GitHub Actions自动化流水线设计圣经(DeepSeek工业级实践大公开)】
  • [通俗易懂C++]:指针和const
  • 2025前端框架最新组件解析与实战技巧:Vue与React的革新之路
  • Nuxt配置、环境覆盖、vue组件配置+Animate.css开发文档及元素用法详解
  • AI: IDE Trae创新探讨与Cursor的对比分析
  • Transceivers Wizard IP核
  • Windows和Linux下,通过C++实现获取蓝牙版本号
  • 3D Gaussian Splatting 数学原理与推导
  • 昇腾910B部署满血DeepSeek-R1(可推理版)
  • 国产编辑器EverEdit - 洞察秋毫!内置文件比较功能!
  • 复古怀旧绿色调电影摄影照片调色Lightroom预设 Cinematic Green – Desktop and Mobile Presets