您的位置:首页 > 理论基础 > 计算机网络

requests进行网络请求与urllib2进行网络请求进行比较

2016-10-16 21:52 232 查看
同一台计算机,同一个环境下,获取LOL贴吧前二十页内容,urllib2用时18.8280000687,而采用requests进行网络请求耗14.8680000305。综上来讲,选用第三方的requests进行网络请求效率比较高。但是,依然不够好,如果我们采用,多线程的方法,又可以将时间成倍的降低,也就是说如果你是两核处理器时间可以在requests的基础之上除以2,如果是四核的,就可以在requests的基础之上除以4。这样就可以大大的提高网络请求效率。

requests请求:

def getContent(url):

”’

:param url: 网络地址

:return:获取的网页内容

”’

user_agent = ‘User-Agent:Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; Trident/5.0;’

head = {‘User-Agent’:user_agent}

html = requests.get(url, headers = head).text

return html


urllib2请求:

def loadContent(url):

”’

下载网页内容

”’

user_agent = ‘User-Agent:Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; Trident/5.0;’

headers = {‘User-Agent’:user_agent}

req = urllib2.Request(url, headers=headers)
request = urllib2.urlopen(req)

return request.read()
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  多线程 python