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

Python UnicodeEncodeError求助:charmap无法编码特定位置字符

解决UnicodeEncodeError: 'charmap'编码问题

不用额外安装Python库哦!这个报错根本不是缺库导致的,是Windows控制台默认编码(charmap)没法处理网页里的特殊字符才触发的。下面给你几个简单的解决办法:

  • 调整print语句的错误处理策略
    直接修改print代码,让它忽略或者替换无法编码的字符:

    # 忽略无法编码的字符
    print(soup.prettify(errors='ignore'))
    # 或者把无法编码的字符替换成?
    print(soup.prettify(errors='replace'))
    
  • 强制标准输出用UTF-8编码
    在代码开头加上几行,让控制台输出强制用UTF-8:

    import sys
    sys.stdout.reconfigure(encoding='utf-8')
    
    # 之后再执行你的原有代码
    import requests
    page = requests.get("https://fred.stlouisfed.org/series/IC4WSA")
    from bs4 import BeautifulSoup
    soup = BeautifulSoup(page.content, 'html.parser')
    print(soup)
    
  • 把内容保存到文件查看(更稳妥)
    如果只是想查看网页解析后的内容,直接保存到UTF-8编码的HTML文件里反而更方便:

    import requests
    page = requests.get("https://fred.stlouisfed.org/series/IC4WSA")
    from bs4 import BeautifulSoup
    soup = BeautifulSoup(page.content, 'html.parser')
    
    # 保存到文件
    with open('parsed_page.html', 'w', encoding='utf-8') as file:
        file.write(soup.prettify())
    

    之后直接打开生成的parsed_page.html文件就能看到完整内容了,完全不会有编码问题。

总结一下:你的requests和BeautifulSoup环境没问题,只是输出环节的编码不兼容,用上面任意一种方法都能解决~

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.25 06:27:23