为了账号安全,请及时绑定邮箱和手机立即绑定

python爬虫之urllib模块和requests模块学习

标签:
Python

今天学习了request模块和urllib模块,了解到这两个模块最大的区别就是在爬取数据的时候连接方式的不同。urllb爬取完数据是直接断开连接的,而requests爬取数据之后可以继续复用socket,并没有断开连接。
两种用法的区别,上源码:
requests:

#coding:utf-8

import requests

def eazy_url_demo(url):
    res=requests.get(url)
    print '>>>>>>>Res info>>'
    print res.headers
    print 'read>>>>>>'
    print res.text

def url_get(url):
    data={'param1':'hello','param2':'wrold'}
    res=requests.get(url,params=data)
    print '>>>>>>>code'
    print res.status_code
    print res.reason
    print '>>>>>>>Res info>>'
    print res.headers
    print 'read>>>>>>'
    print res.text

if __name__=='__main__':
    # url_exp='http://httpbin.org/ip'
    # eazy_url_demo(url_exp)
    url_get1='http://httpbin.org/get'
    url_get(url_get1)

urllib和urllib2:

#coding:utf-8

import urllib2,urllib

def eazy_url_demo(url):
    res=urllib2.urlopen(url)
    print '>>>>>>>Res info>>'
    print res.info()
    print 'read>>>>>>'
    print res.read()

def url_get(url):
    data=urllib.urlencode({'param1':'hello','param2':'wrold'})
    print type(url)
    print type(data)
    new_url='?'.join([url,'%s']) % data
    res=urllib2.urlopen(new_url)
    print '>>>>>>>Res info>>'
    print res.info()
    print 'read>>>>>>'
    print res.read()

if __name__=='__main__':
    # url_exp='http://httpbin.org/ip'
    # eazy_url_demo(url_exp)
    url_get1='http://httpbin.org/get'
    url_get(url_get1)

总结:requests还是比urllib更简单明了的,目前还没有发现节约资源方面的具体使用,继续跟进中。

点击查看更多内容
9人点赞

若觉得本文不错,就分享一下吧!

评论

作者其他优质文章

正在加载中
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦
今天注册有机会得

100积分直接送

付费专栏免费学

大额优惠券免费领

立即参与 放弃机会
意见反馈 帮助中心 APP下载
官方微信

举报

0/150
提交
取消