logs http ast lib urllib2 疑问 and lin
由于 Python3 合并 URLib 与 URLlib2 统一为 URLlib,Python3 将 urlopen 方法放在了 urllib.request 对象下。
官方文档:https://docs.python.org/3/library/urllib.request.html#module-urllib.request
在实现爬取网页过程中,屡次执行以下脚本:
- #coding:UTF-8
- import random;
- import urllib.request;# 不推荐使用 import urllib
- rawdata =
- urllib.request.urlopen('http://www.111cn.net/phper/python/68713.htm').read();
- file = open("testfile","w+");
- file.write(str(rawdata));
然而屡次报错:
E:\workspace\Python\python_study201708>python charsetTest.py
Traceback (most recent call last):
File "charsetTest.py", line 3, in <module>
import urllib.request;
File "D:\Python\lib\urllib\request.py", line 98, in <module>
import tempfile
File "D:\Python\lib\tempfile.py", line 45, in <module>
from random import Random as _Random
ImportError: cannot import name 'Random'
于是乎,我就抖了一下机灵:
将 tempfile.py 中第 45 行导入代码更改为:
- # from random import Random as _Random #20170823 22:22改
- from _random import Random as _Random
给它换了一个导入对象~
然后运行成功。
留下疑问:
这难道是 py3 的 bug 么??。。。。。不是有那么多人用 urllib 这个模块么,难道都没有出现和发现这个问题?错觉?。。excuse me?
参考文档:
Python3 中 urllib 详细使用方法 (header, 代理, 超时, 认证, 异常处理)[http://www.111cn.net/phper/python/68713.htm]
Python3 之网络爬虫 <0> 初级
来源: http://www.bubuko.com/infodetail-2275529.html