这次我们将主要尝试利用python
+requsets
模拟登录豆瓣爬取复仇者联盟4影评,首先让我们了解一些模拟登录相关知识补充。本文结构如下:
-
request模块介绍与安装
-
get与post方式介绍
-
request模块使用实例
一、request模块介绍与安装
1.requests和urllib区别
requsets
和urllib
都是爬虫的常用模块,requsets更加友好。虽然上一篇爬取糗事百科的实战中我们用的urllib模块,但是基本不影响我们快速入手requsets,因为上一篇主要还是介绍爬虫爬取数据的一个流程,正则分析etc.
查看更多requests
模块信息,请查阅: 官方文档
2.requests模块安装教程
二、get与post方式介绍
上一篇爬取糗事百科数据使用的urllib
模块,都是用get
方式来爬取数据(没有用urllib2.Request的date参数,date参数在post方式时用到)。而post
和get
有什么区别呢?
HTTP定义了与服务器交互的不同方法,最基本的方法有4种,分别是GET,POST,PUT,DELETE,对应着对这个资源的查,改,增,删 4个操作。到这里,大家应该有个大概的了解了,GET
一般用于获取/查询资源信息,而POST
一般用于更新资源信息。
- get是从服务器上获取数据,post是向服务器传送数据。
- get是把参数数据(如你的账号密码等信息)队列加到提交表单的ACTION属性所指的URL中,值和表单内各个字段对应,在URL中可看到。post是通过HTTP post机制,将表单内各个字段与其内容放置在HTML HEADER内一起传送到ACTION属性所指的URL地址。用户看不到这个过程。
- 对于get方式,服务器端用
Request.QueryString
获取变量的值,对于post方式,服务器端用Request.Form
获取提交的数据。- get传送的数据量较小,不能大于2KB。post传送的数据量较大,一般被默认为不受限制。但理论上,IIS4中最大量为80KB,IIS5中为100KB。
- get安全性非常低,post安全性较高
三、request模块使用实例
1.get方式使用实例
首先,我们看一下requests.get
原型:
requests.get
(url, params=None, **kwargs)[