python3.x中的urllib模块

最新版的python3.3.0已经发布了。相较于python3.0,3.2的改动并不大。但网上的大量的教程等大都以2.x版本为基础。这为想要从python3.0学起的菜鸟带来了很多的困难。 做为一只菜鸟,最近想学习一下python中urllib模块的使用方法。从网上找的最简单的实例:把google 首页的html抓取下来并显示在控制台上 代码:html

import    urllib
print    urllib.urlopen('http://www.google.com').read()

首先,使用过python3.0的朋友都知道,print已经变成含树了,须要括号。但这不是主要问题。问题是控制台显示错误,说urllib模块中没有urlopen方法。 奇怪了,网上的教程能错了?又尝试help(urllib),发现什么方法都没有,只提供了package contents,里面有5个名字。 做为一名新手,第一感受是十分慌乱,是否是IDLE坏了,重装试试。。。固然全部尝试都以失败了结。 最后,我尝试着找找python3.3.0的change log。里面并无找到urllib的修改记录。然而这一修改记录却在python3.0的change log中。 原文是这样写的:python


a new urllib package was created. It consists of code from
urllib, urllib2, urlparse, and robotparser. The old
modules have all been removed. The new package has five submodules:
urllib.parse, urllib.request, urllib.response,
urllib.error, and urllib.robotparser. The
urllib.request.urlopen() function uses the url opener from
urllib2. (Note that the unittests have not been renamed for the
beta, but they will be renamed in the future.)学习


原来,3.0版本中已经将urllib二、urlparse、和robotparser并入了urllib中,而且修改urllib模块,其中包含5个子模块,便是help()中看到的那五个名字。ui

为了从此使用方便,在此将每一个包中包含的方法列举以下: urllib.error: ContentTooShortError; HTTPError; URLErrorgoogle

urllib.parse: parse_qs; parse_qsl; quote; quote_from_bytes; quote_plus; unquote unquote_plus; unquote_to_bytes; urldefrag; urlencode; urljoin; urlparse; urlsplit; urlunparse; urlunspliturl

urllib.request: AbstractBasicAuthHandler; AbstractDigestAuthHandler; BaseHandler; CatheFTPHandler; FTPHandler; FancyURLopener; FileHandler; HTTPBasicAuthHandler; HTTPCookieProcessor; HTTPDefaultErrorHandler; HTTPDigestAuthHandler; HTTPErrorProcessorl; HTTPHandler; HTTPPasswordMgr; HTTPPasswordMgrWithDefaultRealm; HTTPRedirectHandler; HTTPSHandler;OpenerDirector;ProxyBasicAuthHandler ProxyDigestAuthHandler; ProxyHandler; Request; URLopener; UnknowHandler; build_opener; getproxies; install_opener; pathname2url; url2pathname; urlcleanup; urlopen; urlretrieve;code

urllib.response: addbase; addclosehook; addinfo; addinfourl;htm

urllib.robotparser: RobotFileParser教程

固然,python3.0的改动十分巨大,有须要能够参阅change logrem

若是想要学习python的话,仍是建议从3.0起步。由于毕竟时代是发展的,追随最新的东西至少不是错的。

相关文章
相关标签/搜索