【script】python 中文汉字与url的转换
punycode 编码(推荐)
punycode 编码又称 域名代码,是实现 中文汉字转英文字母 的一种编码方式
中文汉字 转 url
import reurl = 'www.示例.com'
# 正则匹配中文汉字
list_cn = re.findall('[\u4e00-\u9fa5]+', url)
# 遍历进行 punycode 编码
list_puny = list(map(lambda x: 'xn--' + x.encode('punycode').decode('utf-8'), list_cn))
# 对原 url 进行替换
for cn, puny in zip(list_cn, list_puny): url = url[:url.find(cn)] + puny + url[url.find(cn) + len(cn):]
print(url)
# www.xn--fsq092h.com
url 转 中文汉字
import reurl = 'www.xn--fsq092h.com'
# 正则匹配 punycode 编码
list_puny = re.findall('xn--(\w*)', url)
# 遍历进行 punycode 解码
list_cn = list(map(lambda x: x.encode('utf-8').decode('punycode'), list_puny))
# 对原 url 进行替换
for puny, cn in zip(list_puny, list_cn): url = url[:url.find(puny) - 4] + cn + url[url.find(puny) + len(puny):]
print(url)
# www.示例.com
之所以推荐该种编码方式,是因为python3的requests模块无法很好的识别中文url编码,导致域名无法访问;其次,谷歌浏览器也是使用的这种编码方式。
url 编码
中文汉字 转 url
from urllib.parse import quote
import stringurl = 'www.示例.com'
url = quote(url, safe = string.printable) # safe 表示可以忽略的字符,数字大小写字母特殊字符等
print(url)
# www.%E7%A4%BA%E4%BE%8B.com
url 转 中文汉字
from urllib.parse import unquoteurl = 'www.%E7%A4%BA%E4%BE%8B.com'
url = unquote(url, encoding='utf-8') # encoding 表示编码,可为 GBK 或 utf-8
print(url)
# www.示例.com
【script】python 中文汉字与url的转换相关推荐
- 中文汉字到URL编码的转换
在使用 Google或者 百度进行中文搜索的时候,我们会发现搜索过程中URL地址栏会变成一串格式字符串编码,我们编写程序经常也需要进行中文汉字到这类URL编码的转换,这里介绍两段相关的转换函数. 对于 ...
- python 中文汉字钱转成阿拉伯数字钱
自己写的一个中文汉字钱转成阿拉伯数字钱的python demo. 例如: 二千万零二十三块 ==> 20000023 三百二十万五百两十三元 ==> ...
- 前端汉字encode_JavaScript URL汉字编码转换
在使用url进行参数传递时,经常会传递一些中文名的参数或URL地址,在后台处理时会发生转换错误.在有些传递页面使用GB2312,而在接收页面使用UTF8,这样接收到的参数就可能会与原来发生不一致.使用 ...
- python将汉字转为拼音字母_科学网—[转载]python中文汉字转拼音 - 陈明杰的博文...
将汉字转为拼音.可以用于汉字注音.排序.检索(Russian translation) . 特性根据词组智能匹配最正确的拼音. 支持多音字. 简单的繁体支持, 注音支持. 支持多种不同拼音/注音风格. ...
- java 数字转换成汉字_Java-String-阿拉伯数字转换成中文汉字数字
package com.test; public class NumberUtils { private static final String[] UNITS = { "", & ...
- python判断汉字个数_python判断列表里数量python中文乱码问题大总结
在运行这样类似的代码:#!/usr/bin/env python s="中文" print s 最近经常遇到这样的问题: 问题一:SyntaxError: Non-ASCII ch ...
- python汉字排序_【IT专家】Python中文排序(转载)
本文由我司收集整编,推荐下载,如有疑问,请与我司联系 Python 中文排序(转载) 2012/02/02 3793 Python 比较字符串大小时,根据的是 ord 函数得到的编码 值.基于它的排序 ...
- 中文汉字转换拼音PHP类
1 <?php 2 /** 3 * 中文汉字转换拼音类 4 * 功能支持 5 * 1.支持中文转换全拼 6 * 2.支持中文转换简拼(首字母) 7 * 3.支持转换的字符串返回格式设置(字符中间 ...
- python 中文转unicode编码_python实现unicode转中文及转换默认编码的方法
本文实例讲述了python实现unicode转中文及转换默认编码的方法.分享给大家供大家参考,具体如下: 一.在爬虫抓取网页信息时常需要将类似"\u4eba\u751f\u82e6\u77e ...
最新文章
- 四种DCOM错误的区别,0x80080005 0x800706be 0x80010105 0x
- kali 安装java jdk
- 编程之美-求二进制数中1的个数方法整理
- 重磅!神策 2018 数据驱动大会报名正式开启!
- 献给开发者的大礼--打造CSDN论坛专用阅读器(电脑报2006年11月6日 第44期)
- Zabbix2.2.6邮件报警设置方法
- LeetCode | HouseCode 算法题
- Python中的进程和线程
- openmeetings2.0安装和开发
- 小波与小波包、小波包分解与信号重构、小波包能量特征提取 暨 小波包分解后实现按频率大小分布重新排列(Matlab 程序详解)
- 量子纠缠1——量子比特、Bell态、EPR佯谬
- android百度地图公交路线,android百度地图api实现查询经过某站点的所有公交路线...
- B - Zhu and 772002(高斯消元解异或方程)
- 用计算机播放cd,电脑上怎么放光盘_播放CD的方法步骤
- 不要为明天忧虑(10.14)
- div onload()
- 液压传动基础知识(一)
- 分析oracle缓慢原因,Oracle SQL执行缓慢的原因分析
- html中 a链接的默认样式,超链接的默认样式
- IDEA查看jks文件