You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Python调用Binance API获取文件内加密交易对价格报-1100错误如何解决

问题原因

你遇到的-1100非法字符报错确实是读取文件行时携带了末尾换行符\n导致的。用open()逐行读取文件内容时,返回的每一行字符串默认会保留行尾的换行符,传入币安接口时就会被判定为非法字符。你观察到打印交易对时中间有空行,就是换行符被打印出来的直接表现。

修复后的代码

from binance.client import Client

api_key = "..."
api_secret = "..."
client = Client(api_key, api_secret)

def get_price(coin_symbol):
    print(coin_symbol)
    cry_coin_price = client.get_symbol_ticker(symbol=coin_symbol)
    cur_price = cry_coin_price["price"]
    print(cur_price)

# 用with上下文管理器打开文件,会自动关闭文件,避免资源泄漏
with open("file.txt", "r", encoding="utf-8") as f:
    for line in f:
        # strip()会去掉字符串首尾的所有空白字符,包括换行符、空格、制表符
        processed_symbol = line.strip()
        # 跳过空行,避免文件里存在空行时传空字符串给接口报错
        if processed_symbol:
            get_price(processed_symbol)

关键修改点说明

  • 逐行读取后调用.strip()方法处理字符串,彻底清除末尾的换行符和首尾意外空格
  • 新增空行判断逻辑,兼容文件中存在空白行的场景
  • 用with语法管理文件打开流程,无需手动调用close(),运行更稳定
  • 把交易对作为参数传入get_price函数,取消全局变量传递,降低逻辑耦合

内容的提问来源于stack exchange,提问作者Edart

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.26 05:36:02