首页 > 编程语言 > 详细

Python3之网络爬虫<0>初级

时间:2017-08-23 22:39:59      阅读:317      评论:0      收藏:0      [点我收藏+]

由于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.cnblogs.com/johnnyzen/p/7420583.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!