使用Python,我们很多时候是需要发送一个网络请求的,这个真的是很容易很容易了,几行代码就能轻松搞定。
一起使用requests这个库HTTP请求大家很常用,我们在这里用最简方式搞定它。
优秀的第三方库
在这里,我们使用requests这个第三方库。我也向你们推荐使用这个。
Python自带的urllib2其实也支持完整的HTTP请求功能,但是requests更强大,支持连接池、连接保持、session/cookie会话保持、支持文件上传、大文件上传、自动响应内容编码、国际化的URL、POST数据自动编码,并且还自动实现了keep-alive,等等。总而言之,各种好处说不尽,但是使用却很简单。
requests这个库不光功能强大简单易用,而且官方更新很及时,最新版本是今年2月20日发布的2.30.0,就在昨天,官方还修复了号BUG。
编写代码
GET请求:
实在是太简单啊带参数的GET请求:
不必自己在URL字符串上转码拼参数POST请求:
一行代码就搞定啦带数据的POST请求:
将一个字典传进去就可以了在国内,根据业界惯例,我们的接口都是POST,处理的是JSON,所以我们很多时候是要传一个JSON的,响应也是JSON,这个也很简单:
requests以POST方式处理JSON最后一行,就是从解析JSON之后取出msg的值。
Session处理
我们在连续执行一些请求的时候,尤其是对一个网站做爬虫时,是不需要每次都创建一个新的连接的,这个时候使用session是十分有必要的。
使用session在这里,我们把自己伪装成了Chrome浏览器。
几点注意
HTTPS请求也是直接发送,不需要做特殊处理对于同一个网站反复要使用多次连接的,可以使用连接池requests请求时会对内容自动转码,不需要我们做处理最后要提醒大家的是:一定要使用官方的英文文档,不要使用中文文档,中文文档是机器翻译的,是这样的:
实在是神翻译,还是算了吧。不过英文确实会导致学习成本升高,大家有了网络上的文章入门指导,再对照书本练习,十天半个月你就能成为高手。我就是这么成长起来的。
¥5零基础Python编程/从入门到精通/python基础教程/网络爬虫/数据分析/python程序设计实践学习视频教材淘宝月销量¥36.8¥69.8购买