Python爬虫遇到的问题——中文转URL编码

Python爬虫遇到的问题——中文转URL编码

在用Python爬京东数据的时候,如果通过URL访问搜索页面,表面上看到的是这样的:
用的google chrome所以前面https://省掉了
但是用requests.get这串URL发现报错(如果“机器学习”是中文的话)
而且注意到在粘贴到jupyter notebook的时候已经帮我们自动转换成了URL格式,即https://search.jd.com/Search?keyword=%E6%9C%BA%E5%99%A8%E5%AD%A6%E4%B9%A0&enc=utf-8&wq=%E6%9C%BA%E5%99%A8%E5%AD%A6%E4%B9%A0&pvid=97e18ec880d4426d863bd3337e6c1719
为了解决这个问题,需要调用Python的一个包 urllib.parse,使用方法:

import urllib.parse
#这里的search_name是任意中文
search_name=urllib.parse.quote(search_name.encode('utf-8'))
print(search_name)
>>'%E6%9C%BA%E5%99%A8%E5%AD%A6%E4%B9%A0'

另外网上也有URL编码和中文互转的工具,反正认得百分号两个十六进制数是URL编码就行


之前写大作业的时候遇到的,现在回来补上,然而发现好像requests不会报错了?不知道怎么回事,以防万一还是写上的好

你可能感兴趣的:(Python基础问题)