resp=request.urlopen(req)这段代码为什么要运行两次?只运行一次为什么会出问题?

来源:3-1 urllib基本用法

宇宙为什么黑漆漆

2017-07-27 16:50

运行一次出错的情况:

UnicodeDecodeError: 'utf-8' codec can't decode byte 0x8b in position 1: invalid start byte


写回答 关注

1回答

  • shanshan591
    2017-07-27 17:34:47

    运行一次也会出问题吧,这是编码问题,print这个函数有限制,代码:

    import io

    import sys

    import urllib.request

    sys.stdout=io.TextIOWrapper(sys.stdout.buffer,encoding=’gb18030’)

    res=urllib.request.urlopen(“http://www.baidu.com”)

    print(res.read().decode(‘utf-8’)

python遇见数据采集

本教程让你初步掌握Python进行数据采集,创造属于你的价值

59669 学习 · 200 问题

查看课程

相似问题