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

处理urllib.request.urlopen报错UnicodeEncodeError:‘ascii‘

参考:[Python3填坑之旅]一·urllib模块网页爬虫访问中文网址出错

目录

一、报错内容

二、报错截图

三、解决方法

四、实例代码

五、运行截图

六、其他UnicodeEncodeError: 'ascii' codec 问题


一、报错内容

UnicodeEncodeError: 'ascii' codec can't encode characters in position 22-23: ordinal not in range(128)

二、报错截图

三、解决方法

字母、数字和 '_.-~' 等字符一定不会被转码。 在默认情况下,此函数只对 URL 的路径部分进行转码。 可选的 safe 形参额外指定不应被转码的 ASCII 字符,其默认值为 '/'。--Python官方文档

1、urllib解析含中文的url时,单独编码中文部分,最后拼接

# -*- coding: UTF-8 -*-
from urllib import request, error, parsecity = '徐州'
city = parse.quote(city)  # urllib处理中文,需要编码
url = 'https://***.***.com/api?city={}'.format(city)

  2、直接对url整体中的中文进行编码,默认不对/字母编码,但会对url中的:=?空格等编码

url = 'https://***.***.com/api?city=徐州'
url = parse.quote(url, safe='/:=?')  # urllib处理中文,需要编码

四、实例代码

1、单独处理中文编码

# -*- coding: UTF-8 -*-
from urllib import request, error, parsecity = '徐州'
city = parse.quote(city)  # urllib处理中文,需要编码
url = 'https://***.***.com/api?city={}'.format(city)response = request.urlopen(url)
print(response.read().decode('utf-8'), response.getheader('Server'))

 2、处理整体url

# -*- coding: UTF-8 -*-
from urllib import request, error, parseurl = 'https://***.***.com/api?city=徐州'
url = parse.quote(url, safe='/:=?')  # urllib处理中文,需要编码response = request.urlopen(url)
print(response.read().decode('utf-8'), response.getheader('Server'))

五、运行截图

六、其他UnicodeEncodeError: 'ascii' codec 问题

参考:

https://blog.csdn.net/u011331731/article/details/89400702

https://wenku.csdn.net/answer/5txy7qyur8

相关文章:

处理urllib.request.urlopen报错UnicodeEncodeError:‘ascii‘

参考:[Python3填坑之旅]一urllib模块网页爬虫访问中文网址出错 目录 一、报错内容 二、报错截图 三、解决方法 四、实例代码 五、运行截图 六、其他UnicodeEncodeError: ascii codec 问题 一、报错内容 UnicodeEncodeError: ascii codec cant encode charac…...

数据结构模拟实现LinkedList双向不循环链表

目录 一、双向不循环链表的概念 二、链表的接口 三、链表的方法实现 (1)display方法 (2)size方法 (3)contains方法 (4)addFirst方法 (5)addLast方法 …...

性能优化-如何提高cache命中率

本文主要介绍性能优化领域常见的cache的命中率问题,旨在全面的介绍提高cache命中率的方法,以供大家编写出性能友好的代码,并且可以应对性能优化领域的面试问题。 🎬个人简介:一个全栈工程师的升级之路! &am…...

分布式【4. 什么是 CAP?】

什么是 CAP? C 代表 Consistency,一致性,是指所有节点在同一时刻的数据是相同的,即更新操作执行结束并响应用户完成后,所有节点存储的数据会保持相同。 A 代表 Availability,可用性,是指系统提…...

<软考高项备考>《论文专题 - 39采购管理(3) 》

3 过程2-实施采购 3.1 问题 4W1H过程做什么获取卖方应答、选择卖方并授予合同的过程作用:选定合格卖方并签署关于货物或服务交付的法律协议。本过程的最后成果是签订的协议,包括正式合同。为什么做实际进行采购谁来做组织中的职能部门或项目经理什么时…...

Java在SpringCloud中自定义Gateway负载均衡策略

Java在SpringCloud中自定义Gateway负载均衡策略 一、前言 spring-cloud-starter-netflix-ribbon已经不再更新了,最新版本是2.2.10.RELEASE,最后更新时间是2021年11月18日,详细信息可以看maven官方仓库:org.springframework.clou…...

前端 js 基础(1)

js 结果输出 &#xff08;点击按钮修改文字 &#xff09; <!DOCTYPE html> <html> <head></head><body><h2>Head 中的 JavaScript</h2><p id"demo">一个段落。</p><button type"button" onclic…...

Android : 使用GestureOverlayView进行手势识别—简单应用

示例图&#xff1a; GestureOverlayView介绍&#xff1a; GestureOverlayView 是 Android 开发中用于识别和显示手势的视图组件。它允许用户在屏幕上绘制手势&#xff0c;并且应用程序可以检测和响应这些手势。以下是关于 GestureOverlayView 的主要特点&#xff1a; 手势识别…...

API集群负载统计 (100%用例)C卷 (JavaPythonNode.jsC语言C++)

某个产品的RESTful API集合部署在服务器集群的多个节点上, 近期对客户端访问日志进行了采集,需要统计各个API的访问频次, 根据热点信息在服务器节点之间做负载均衡,现在需要实现热点信息统计查询功能。 RESTful API的由多个层级构成,层级之间使用/连接,如/A/B/C/D这个地址…...

小梅哥Xilinx FPGA学习笔记18——专用时钟电路 PLL与时钟向导 IP

目录 一&#xff1a;IP核简介&#xff08;具体可参考野火FPGA文档&#xff09; 二&#xff1a; 章节导读 三&#xff1a;PLL电路原理 3.1 PLL基本实现框图 3.2 PLL倍频实现 3.3 PLL分频实现 四: 基于 PLL 的多时钟 LED 驱动设计 4.1 配置 Clocking Wizard 核 4.2 led …...

低代码平台在金融银行中的应用场景

随着数字化转型的推进&#xff0c;商业银行越来越重视技术在业务发展中的作用。在这个背景下&#xff0c;白码低代码平台作为一种新型的开发方式&#xff0c;正逐渐受到广大商业银行的关注和应用。白码低代码平台能够快速构建各类应用程序&#xff0c;提高开发效率&#xff0c;…...

Css基础内容

<!DOCTYPE html> <html> <head> <meta charset"UTF-8" /> <title>CSS</title> <!-- <link rel"stylesheet" href"Html5与Css3\CSS\my.css"> --> <!-- link引入外部样式表&#xff1a;rel&…...

微服务(11)

目录 51.pod的重启策略是什么&#xff1f; 52.描述一下pod的生命周期有哪些状态&#xff1f; 53.创建一个pod的流程是什么&#xff1f; 54.删除一个Pod会发生什么事情&#xff1f; 55.k8s的Service是什么&#xff1f; 51.pod的重启策略是什么&#xff1f; 可以通过命令kub…...

连锁门店管理需要信息化系统

连锁门店管理的信息化系统可以提供以下功能&#xff0c;以满足连锁企业日常管理的需求&#xff1a; 1. 连锁线下收银&#xff1a;信息化系统可以提供线下收银功能&#xff0c;包括商品扫码、价格结算、支付方式选择等。通过系统记录每笔交易数据&#xff0c;方便对销售情况进行…...

UTF-8编码:打破字符编码的国界

UTF-8编码&#xff1a;打破字符编码的国界 大家好&#xff0c;我是免费搭建查券返利机器人赚佣金就用微赚淘客系统3.0的小编&#xff0c;也是冬天不穿秋裤&#xff0c;天冷也要风度的程序猿&#xff01;今天&#xff0c;让我们一同探讨编程世界中一项至关重要的技术——“UTF-…...

HTML进阶

列表、表格、表单 文章目录 列表、表格、表单01-列表无序列表有序列表定义列表 02-表格表格结构标签-了解合并单元格 03-表单input 标签input 标签占位文本单选框上传文件多选框下拉菜单文本域label 标签按钮 04-语义化无语义的布局标签有语义的布局标签 05-字符实体 01-列表 …...

基于策略模式和简单工厂模式实现zip、tar、rar、7z四种压缩文件格式的解压

推荐语 这篇技术文章深入探讨了基于策略模式和简单工厂模式实现四种常见压缩文件格式的解压方法。通过阅读该文章&#xff0c;你将了解到如何利用这两种设计模式来实现灵活、可扩展的解压功能&#xff0c;同时适应不同的压缩文件格式。如果你对设计模式和文件处理感兴趣或刚好…...

修改jenkins的目录(JENKINS_HOME)

默认JENKINS_HOME是/var/lib/jenkins/ 现要修改为/home/jenkins_data/jenkins 最开始 sudo cp -a /var/lib/jenkins/ /home/jenkins_data/ 然后如下操作&#xff1a; 1、首先 /etc/sysconfig/jenkins&#xff1a;jenkins配置文件&#xff0c;“端口”&#xff0c;“JENKIN…...

Bytebase:统一数据库 CI/CD 解决方案 | 开源日报 No.128

bytebase/bytebase Stars: 7.9k License: NOASSERTION Bytebase 是一个数据库 CI/CD 解决方案&#xff0c;为开发人员和 DBA 提供统一的工具来管理不同数据库系统的开发生命周期。其主要功能包括标准化操作流程、SQL 代码审查、GitOps 集成以及数据访问控制等。关键特性和核心…...

History对象常用方法

文章目录 一、什么是History对象二、使用History对象 一、什么是History对象 history 对象来保存浏览器历史记录信息&#xff0c;也就是用户访问的页面。浏览器的前进与后退功能本质上就是 history 的操作。history 对象记录了用户浏览过的页面&#xff0c;通过该对象提供的 A…...

轻量级Web框架Oli:从核心原理到生产实践

1. 项目概述&#xff1a;一个轻量级、可扩展的Web应用框架最近在梳理手头几个小项目的技术栈时&#xff0c;我又把amrit110/oli这个仓库翻了出来。这是一个在GitHub上由开发者amrit110创建并维护的名为oli的项目。乍一看标题&#xff0c;你可能会有点懵&#xff0c;oli是什么&a…...

TPU材料3D打印iPad Pro保护框:从设计到成品的完整实践指南

1. 项目概述&#xff1a;为什么选择TPU为iPad Pro打造专属保护框&#xff1f;作为一名折腾过几十公斤耗材的3D打印老玩家&#xff0c;我始终认为&#xff0c;这项技术最迷人的地方不在于复刻网上的模型&#xff0c;而在于为手头的心爱之物量身定制解决方案。就拿我手边的这台iP…...

树莓派5驱动128x128 LED矩阵:打造复古PICO-8游戏艺术墙

1. 项目概述与核心思路我一直对复古游戏和像素艺术情有独钟&#xff0c;也一直想在家里弄一个既有科技感又能玩的装饰品。最近&#xff0c;我把树莓派5、四块64x64的RGB LED矩阵面板和PICO-8幻想游戏机捣鼓到了一起&#xff0c;成功在墙上挂起了一个128x128像素的“游戏艺术墙”…...

Node.js代理池实战:proxy-agents库核心原理与高级应用

1. 项目概述与核心价值最近在折腾一些需要处理大量网络请求的自动化脚本&#xff0c;比如数据采集、API测试或者模拟用户操作&#xff0c;一个绕不开的痛点就是IP被封。单个IP频繁请求&#xff0c;对方服务器很容易就把你拉黑了。这时候&#xff0c;代理池就成了刚需。市面上成…...

VTube Studio API完全指南:5个核心场景教你打造个性化虚拟主播互动

VTube Studio API完全指南&#xff1a;5个核心场景教你打造个性化虚拟主播互动 【免费下载链接】VTubeStudio VTube Studio API Development Page 项目地址: https://gitcode.com/gh_mirrors/vt/VTubeStudio 想要为你的虚拟主播形象添加更多互动功能&#xff0c;却不知道…...

低多边形风出图总显廉价?揭秘Midjourney v6中--stylize、--polarize与--no纹理干扰的黄金配比公式

更多请点击&#xff1a; https://intelliparadigm.com 第一章&#xff1a;低多边形风出图的视觉认知陷阱与Midjourney v6风格断层解析 低多边形&#xff08;Low-Poly&#xff09;风格在AI图像生成中常被误认为“简约即可控”&#xff0c;实则构成一类典型的视觉认知陷阱&#…...

2026年冰袋吸水粉厂家大揭秘:选择指南与行业趋势题

随着冷链物流行业的快速发展&#xff0c;冰袋吸水粉作为冷链运输中不可或缺的保冷材料&#xff0c;其市场需求持续增长。然而&#xff0c;市场上冰袋吸水粉的质量参差不齐&#xff0c;如何选择一家值得信赖的厂家成为许多采购商关注的重点。本文将从行业背景、技术特点及市场趋…...

紧急更新!MJ v6.1新增--style raw对表现主义的影响深度解析(附6种失效场景急救方案)

更多请点击&#xff1a; https://intelliparadigm.com 第一章&#xff1a;紧急更新&#xff01;MJ v6.1新增--style raw对表现主义的影响深度解析&#xff08;附6种失效场景急救方案&#xff09; MidJourney v6.1 引入的 --style raw 参数并非简单降低美学修饰&#xff0c;而是…...

别再只认识空气开关了!从家用配电箱到工厂配电柜,一文搞懂断路器的选型与接线(附实物图)

从家庭配电到工业电力&#xff1a;断路器的实战选型与安全接线指南 推开配电箱的门板&#xff0c;那些排列整齐的断路器不仅仅是电路的通断开关&#xff0c;更是守护用电安全的第一道防线。无论是家庭装修中的线路规划&#xff0c;还是工厂车间的电力分配&#xff0c;选择合适的…...

Cadence Allegro铺铜实战:从动态避让到静态优化,我的多层板效率提升心得

Cadence Allegro铺铜实战&#xff1a;从动态避让到静态优化&#xff0c;我的多层板效率提升心得 在高速PCB设计领域&#xff0c;Cadence Allegro作为行业标准工具&#xff0c;其铺铜功能直接影响设计效率与产品质量。当板层超过8层、元件密度突破500pin/inch时&#xff0c;动态…...