python爬虫url出现中文

很多网页的url都会出现中文,这时如果直接使用该url,会出现错误

web=urlopen("https://baike.baidu.com/item/蒙奇·D·路飞/726966?fromtitle=蒙奇·D·路飞&fromid=1347493")
soup=bs(web,"lxml")
print(soup)
UnicodeEncodeError: 'ascii' codec can't encode characters in position 10-12: ordinal not in range(128)

这时就需要将中文进行转码,用16进制表示

需要使用到urllib库的parse包

from urllib.parse import quote
word=quote("蒙奇·D·路飞")
print(word)
%E8%92%99%E5%A5%87%C2%B7D%C2%B7%E8%B7%AF%E9%A3%9E

只需将url中的中文进行替换就可以了

url="https://baike.baidu.com/item/"+word+"/726966?fromtitle="+word+"&fromid=1347493"

 

  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值