Python3 安装bulitwith 和urllib2包
# 背景
最近在看PACKT的Python Web Scraping, 书上用的是Python 2.X,但是自己电脑上却用的Python 3.4。
版本升级没什么好说的,只是很多的工具包并没有跟着升级。同时目前很多经典教材都是2.X为基础的,并没有跟着升级3.X的内容。十分无语。
搜了下知乎,发现许多人还是认可Python3的升级。
只是我记得Python的快速原型部署一直是程序员津津乐道的话题,现在因为许多常用lib的原因,纠结在语言升级后工具的安装上,令人十分火大。
Windows没有设置pip的路径,所有自己cmd路径指向python34\liib\site-packages下:
Python pip install builtwith
然后在Python cmd import。(话说能弄个友好一点的cmd么?简直一肚子火)
安装的问题主要涉及到Python3的对Exception和print的修改
# import builtwith
出现的错误为:
File "<stdin>"m line 1, in <module>
File "...\site-packages\builtwith\__init__.py", line44
"Exception, e"
因为Python2中的Exception,e 的写法不再支持,需要修改成Exception as e.
(这句话看了我半天, 明明说是抛出了Exception e, 却硬是没看到e的信息,火大!)
另外Python2中的print语句在Python3中需要写成print(),按照错误提示修改对应行数即可。
语法问题修改之后,会报一个没有安装urllib2的包的错误。
通过pip install urllib2也会提示找不到包。
这是因为builtwith依赖于urllib2包。但Pyhton2中的urllib2工具包,在Python3中分拆成了urllib.request和urllib.error两个包。就导致找不到包,同时也没办法安装。
所以需要install urllib.request和install urllib.error 两个包,然后将builtwith包中的import urllib2修改为import urllib.request 和import urllib.error。
同时代码中的方法函数也需要修改,基本就是将urllib2.xxx修改为urllib.request.xxx。
urllib2修改后对应的函数列表见:https://docs.python.org/2/library/urllib2.html。
Python3 安装bulitwith 和urllib2包的更多相关文章
- Python3安装与使用urllib2包之小坑
Python3 安装urllib2包之小坑 Python3.6.6或者说python3.x找不到urllib2语法问题修改之后,会报一个没有安装urllib2的包的错误. 通过pip install ...
- Python3.X如何下载安装urllib2包 ?
python 3.X版本不需要安装urllib2包,因为urllib和urllib2包集合成在一个包了 那现在问题是: 在python3.x版本中,如何使用:urllib2.urlopen()? 答: ...
- (转)Python3.X如何下载安装urllib2包 ?
python 3.X版本是不需要安装:urllib2包的,urllib和urllib2包集合成在一个包了那现在问题是:在python3.x版本中,如何使用:urllib2.urlopen()? 答:i ...
- python3.4学习笔记(八) Python第三方库安装与使用,包管理工具解惑
python3.4学习笔记(八) Python第三方库安装与使用,包管理工具解惑 许多人在安装Python第三方库的时候, 经常会为一个问题困扰:到底应该下载什么格式的文件?当我们点开下载页时, 一般 ...
- python3 安装 past 包
python3 安装 past 包 $ pip install future 错误现象 缺乏包的引用 from past.types import unicode 参考链接 https://pypi. ...
- Python3安装Crypto加密包
Python3安装Crypto加密包 下载链接 加密包地址 步骤 下载加密包,解压加密包到Python安装目录下Lib\site-packages目录中,尝试在Pycharm中导入 from Cryp ...
- python3安装builtwith
>>> import builtwith Traceback (most recent call last): File , in <module> File excep ...
- python3 安装及项目管理安装
python3 一.下载安装 地址:https://www.python.org/downloads/ 安装:傻瓜式安装:我的目录如下 二.环境配置 [右键计算机]-->[属性]-->[高 ...
- centos7虚拟机下python3安装matplotlib遇到的一些问题
1.安装位置 centos7虚拟机+python3.6 2.问题 2.1如果是使用的python2版本可以使用如下方式, #yum search matplotlib 返回如下: 已加载插件:fast ...
随机推荐
- samba 最简单配置 共享
[root@GitLab ~]# cat /etc/samba/smb.conf [global] workgroup = WORKGROUP server string = David Samba ...
- Mybatis 字符绑定
http://blog.csdn.net/softwarehe/article/details/8889206
- .netWeb方向:语言+技术
常用语言+技术 C# T-Sql ADO.NEt JavaScript Asp.Net MVC HTML CSS DOM AJAX Entity Framework Regular expressio ...
- eclipse使用tips-Toggle Mark Occurrences 颜色更改
Toggle Mark Occurrences这个功能非常好用,能把选中的方法/变量在本类中全部出现的地方高亮显示,是一个非常实用的功能.但是默认颜色是灰色,非常毁眼.可以通过下面的设置更改为自己喜欢 ...
- 回溯法解决N皇后问题(以四皇后为例)
以4皇后为例,其他的N皇后问题以此类推.所谓4皇后问题就是求解如何在4×4的棋盘上无冲突的摆放4个皇后棋子.在国际象棋中,皇后的移动方式为横竖交叉的,因此在任意一个皇后所在位置的水平.竖直.以及45度 ...
- 【mysql启动Innodb的方法】
点击此处进入原网页 1.存储引擎是什么? Mysql中的数据用各种不同的技术存储在文件(或者内存)中.这些技术中的每一种技术都使用不同的存储机制.索引技巧.锁定水平并且最终提供广泛的不同的功能和能力. ...
- poj 2155:Matrix(二维线段树,矩阵取反,好题)
Matrix Time Limit: 3000MS Memory Limit: 65536K Total Submissions: 17880 Accepted: 6709 Descripti ...
- blender源代码编译
blender源码路径(svn):https://svn.blender.org/svnroot/bf-blender/trunk/blender/ 依赖外部Lib(svn):https://svn. ...
- POJ2406 Power Strings(KMP,后缀数组)
这题可以用后缀数组,KMP方法做 后缀数组做法开始想不出来,看的题解,方法是枚举串长len的约数k,看lcp(suffix(0), suffix(k))的长度是否为n- k ,若为真则len / k即 ...
- js注入
1.JavaScript注入就是在浏览器地址栏中输入一段js代码,用来改变页面js变量.页面标签的内容. 使用Javascript注入,用户不需要关闭或保存网页就可以改变其内容,这是在浏览器的地址栏上 ...