技术文章 > Python技术 > Python爬虫 > 正文

http请求如何在python爬虫中实现?

最近我们会比较多的提到网页,因为这和python中的爬虫密切相关。当然,我们也会需要处理一些网页的请求。处理http的方法并不是单一的,学过urllib库的小伙伴好好思考下,其中有没有解决的办法呢?答案是当然有啦!不过这属于进阶的知识点,可能萌新还没有接触到。今天小编就来讲讲urllib库中处理http请求的一些操作吧。


http 协议有六种请求方法,get,head,put,delete,post,options,我们有时候需要用到 PUT 方式或者 DELETE 方式请求。 


PUT:这个方法比较少见。HTML 表单也不支持这个。本质上来讲, PUT POST 极为相似,都是向服务器发送数据,但它们之间有一个重要区别,PUT 通常指定了资源的存放位置,而 POST 则没有,POST 的数据存放位置由服务器自己决定。 DELETE:删除某一个资源。基本上这个也很少见,不过还是有一些地方比如 amazon S3 云服务里面就用的这个方法来删除资源。

如果要使用 HTTP PUT DELETE ,只能使用比较低层的 httplib 库。虽然如此,我们还是能通过下面的方式,使 urllib2 能够发出 PUT DELETE 的请求,不过用的次数的确是少,在这里提一下。

import urllib2
request = urllib2.Request(uri, data=data)
request.get_method = lambda: 'PUT' # or 'DELETE'
response = urllib2.urlopen(request)

 

拓展:使用 DebugLog

可以通过下面的方法把 Debug Log 打开,这样收发包的内容就会在屏幕上打印出来,方便调试,这个也不太常用,仅提一下

import urllib2
httpHandler = urllib2.HTTPHandler(debuglevel=1)
httpsHandler = urllib2.HTTPSHandler(debuglevel=1)
opener = urllib2.build_opener(httpHandler, httpsHandler)
urllib2.install_opener(opener)
response = urllib2.urlopen('http://www.baidu.com')


以上就是python爬虫使用http请求的方法。今天算是带领大家学会put的的用法,对post感兴趣的也可以去翻阅下,因为两个有相似的地方,相信学习起来也不会太难。更多Python学习推荐:PyThon学习网教学中心

免费视频教程
本文原创发布python学习网,转载请注明出处,感谢您的尊重!
相关文章
 python爬虫urllib中的post如何实现?
 如何创建python爬虫中的多线程?
 如何学习python爬虫知识?怎么学?
 Urllib库在python爬虫中如何用?
相关视频章节
 网络爬虫
 云端部署Web应用程序视频
 Web应用框架Flask和文件模板
 Web应用程序开发概述
 继承和多态
推荐视频
视频教程分类