urllib & urllib2

之前看python, 知道有urllib和urllib2两个模块,但是一直没有去深入学习, 也并不清楚为什么有了urllib2还要保留urllib,最近接触一点爬虫的知识,用到了urllib和urllib2, 在此做一点记录,记录这两个模块的区别以便日后查看.
urllib和urllib2模块都做与请求URl相关的操作,但是提供的功能却不尽相同.

  1. urllib2.urlopen可以接受一个Request 对象或者url,而urllib.urlopen只能接受一个url
    在交互解释器中查看两个函数的帮助可以看到

    >>> import urllib,urllib
    >>> help(urllib.urlopen)
    
    Help on function urlopen in module urllib:
    
    urlopen(url, data=None, proxies=None)
        Create a file-like object for the specified URL to read from.
    (END)
    
    >>> help(urllib2.urlopen)
    >
    Help on function urlopen in module urllib2:
    
    urlopen(url, data=None, timeout=<object object>)
    (END)
  2. urllib 有urlencode,urllib2没有,这也是为什么总是urllib,urllib2常会一起使用的原因

  3. 如果只是单纯的下载或者显示下载进度,不对下载后的内容做处理等,比如下载图片,css,js文件等,可以用urlilb.urlretrieve()
    如果是下载的请求需要填写表单,输入账号,密码等,建议用urllib2.urlopen(urllib2.Request())
    在对字典数据编码时候,用到的是urllib.urlencode()
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值