python写抢票软件_2019最新某python编写抢票软件实战教程

在Python3.6环境下,使用urllib模块请求网页时遇到响应的中文内容显示为16进制。通过在响应体的read()方法后添加.decode('utf-8')进行解码,可以将16进制的中文字符转换为可读的中文形式,提高代码的可读性。
摘要由CSDN通过智能技术生成

问题:在学习Python爬虫一开始,利用python自带urllib模块请求一个网页时,响应的content中中文为16进制,如何转换为中文。

环境:WIN10+Python3.6

代码:

#~ coding=utf-8

#~ 使用Pyton内建模块 urllib 请求一个 URL 代码示例

import ssl

from urllib.request import Request

from urllib.request import urlopen

#使用ssl创建未经验证的上下文,在urlopen中传入上下文参数

context = ssl._create_unverified_context()

#~ HTTP请求

request = Request(url = 'https://me.csdn.net/chengyikang20',

method = 'GET',

headers = {'Host':'me.csdn.net'},

data = None)

#~ HTTP响应

response = urlopen(request, context=context)

headers = response.info()#响应头

content = response.read()#响应体

code = response.getcode()#状态码

print('headers='+str(headers)+'\n\n')

print('content='+str(content)+'\n\n')

print('code='+str(code)+'\n')

输出结果:

可以看出中文字符转换为16进制,不好看。

解决方法:

很简单,只需要将read()用‘utf-8’解码即可。

content = response.read().decode('utf-8')#响应体

效果:

可以看到 这样的输出更加美观,可读性强。

---------------------

作者:chengyikang20

来源:CSDN

原文:https://blog.csdn.net/chengyikang20/article/details/85914642

版权声明:本文为博主原创文章,转载请附上博文链接!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值