当前位置:首页 » 编程语言 » python安装urllib

python安装urllib

发布时间: 2022-08-23 17:38:27

A. python3.4没有 urllib2

py3版本之后urllib模块合并为urllib.request了。

原先的一些函数方法变化不大,只是多加了一个request而已。比如urllib.request.urlopen()

参考:http://www.cnblogs.com/Lands-ljk/p/5447127.html

B. python urllib需要安装吗

urllib2是python自带的模块,不需要下载。 urllib2在python3.x中被改为urllib.request

C. python的urllib模块是要单独安装还是自带的

是Python自带的模块

D. python urllib2模块 在哪里下载

urllib2是python自带的模块,不需要下载。

urllib2在python3.x中被改为urllib.request

E. python3怎么安装 urllib

不需要安装,自带的
直接import urllib就可以。

F. python 2.7怎么检查urllib安装成功

测试一下就可以了
import urllib2

response = urllib2.urlopen("")
print response.read()

G. python2.7 怎样集成 urllib2

python最恶心的地方就在于它的版本和配置了,特别是安装第三方包的时候经常会出现莫名其妙的错误,又不懂。

所以只能不断的切来切去的。

今天学习python爬虫,其中Python2.7使用了urllib和urllib2,python3的urllib结合了py2.7的两部分。但是电脑不知为什么又安装不了py3的urllib,好烦。出现下面的错误。

python2.7和python3主要是模块的位置变化地方较多。

其中python2.7的urllib和urllib2的区别一下:

  • urllib2可以接受一个Request类的实例来设置URL请求的headers,urllib仅可以接受URL。这意味着,你不可以通过urllib模块伪装你的User Agent字符串等(伪装浏览器)。

  • urllib提供urlencode方法用来GET查询字符串的产生,而urllib2没有。这是为何urllib常和urllib2一起使用的原因。

  • urllib2模块比较优势的地方是urlliburllib2.urlopen可以接受Request对象作为参数,从而可以控制HTTP Request的header部。

  • 但是urllib.urlretrieve函数以及urllib.quote等一系列quote和unquote功能没有被加入urllib2中,因此有时也需要urllib的辅助。

H. python报错urllib.error.URLError: <urlopen error unknown url type: src="https>,Windows系统怎么解决

jango站点使用django_cas接入SSO(单点登录系统),配置完成后登录,抛出“urlopen error unknown url type: https”异常。寻根朔源发现是python内置的urllib模块不支持https协议。

>>> import urllib
>>> urllib.urlopen('htom')
<addinfourl at 269231456 whose fp = <socket._fileobject object at 0xff98250>>
>>> urllib.urlopen('hm')
Traceback (most recent call last):
File "<stdin>", line 1, in <mole>
File "/usr/local/python27/lib/python2.7/urllib.py", line 86, in urlopen
return opener.open(url)
File "/usr/local/python27/lib/python2.7/urllib.py", line 204, in open
return self.open_unknown(fullurl, data)
File "/usr/local/python27/lib/python2.7/urllib.py", line 216, in open_unknown
raise IOError, ('url error', 'unknown url type', type)
IOError: [Errno url error] unknown url type: 'https'

之所以python内置的urllib模块不支持https协议是因为编译安装python之前没有编译安装类似于openssl这样的SSL库,以至于python不支持SSL

因为我用的是Centos系统所以安装openssl-devel
sudo yum install openssl-devel

之后重新编译Python
./configure(可选,因为之前已经配置过,按之前的配置来就行了,而且最好按之前的配置配编译安装以免依赖的库需要重新编译安装。)
make
make install

>>> import urllib
>>> urllib.urlopen('htt.com')
没有再报同样的错误。

在安装完openssl-devel后重新编译python前也有说需要编辑Moles文件夹内Setup.dist文件的
修改
# Socket mole helper for SSL support; you must comment out the other
# socket line above, and possibly edit the SSL variable:
#SSL=/usr/local/ssl
#_ssl _ssl.c \
# -DUSE_SSL -I$(SSL)/include -I$(SSL)/include/openssl \
# -L$(SSL)/lib -lssl -lcrypto

# Socket mole helper for SSL support; you must comment out the other
# socket line above, and possibly edit the SSL variable:
SSL=/usr/local/ssl
_ssl _ssl.c \
-DUSE_SSL -I$(SSL)/include -I$(SSL)/include/openssl \
-L$(SSL)/lib -lssl -lcrypto

但实际测试下来好像并不需要修改这个文件,编译的时候能自动将SSL库编译进python中。

另外需要特别注意的是,重新编译安装python后,通过可执行文件名(可能是个连接文件)运行python可能运行的还是老的python,这是因为可执行文件名没有连接到新的python可执行程序。因此要用最新的python可执行文件名或指向该名字的连接来运行python。

重新编译安装python后有可能导致需要重新编译django,MySQLdb,pycrypto,python-ldap,django-auth-ldap,django_cas,django_cas,pymongo等一些列依赖python的模块。这里要特别注意

I. python3.4没有urllib2怎么办

python 3.x中urllib库和urilib2库合并成了urllib库。

其中urllib2.urlopen()变成了urllib.request.urlopen()

urllib2.Request()变成了urllib.request.Request()

热点内容
魅族微信多开安卓怎么弄 发布:2025-01-18 10:04:33 浏览:448
网络设置里没有服务器是什么 发布:2025-01-18 09:52:19 浏览:343
阿里云esc服务器系统 发布:2025-01-18 09:49:16 浏览:790
你们家的无线网密码是多少 发布:2025-01-18 09:47:50 浏览:730
renderscriptandroid 发布:2025-01-18 09:32:18 浏览:993
安卓手机如何拍游戏素材 发布:2025-01-18 09:30:59 浏览:348
广州日立压缩机有限公司 发布:2025-01-18 09:15:08 浏览:624
服务器两条宽带如何叠加网速 发布:2025-01-18 08:52:17 浏览:731
oracle存储过程集合 发布:2025-01-18 08:42:39 浏览:885
洋葱数学缓存 发布:2025-01-18 08:38:36 浏览:919