前面我们又介绍过简单网页和复杂的异步加载网页爬取过程,其实都是通过请求URL网址来获取信息的,但是现在很多网站都需要登录后才能得到信息,这时改如何处理呢?
今天我们来介绍通过观查表单源代码和逆向工程来推导出表单信息,来填写表单以获取网页信息,同时通过提交Cookie信息来模拟登录网站。
1、表单交互
import requests
params={
‘key1’:’value1’,
‘key2’:’value2’,
‘key3’:’value3’,
}
html=requests.post(url,data=params)
print(html.text)
由于现在大多数网站都有多种登录方式,通过短信或者微信登录等,相对通过直接调用表单进行交互已经比较麻烦,这里不做详细介绍,主要表单交互可以通过登录后来找到对应的网页,见下文。
2、逆向工程如何构建表单
对于登录后使用了异动加载的网页,可以通过逆向工程构架你表单来找到不同的网页信息,下面我们先看一下如何构建表单。
(1)登录拉勾网,打开Chrome浏览器,选择Netwoek
(2)搜索关键字python得到post的表单信息见下图1和下图2
3、Cookie模拟登录
有时候表单字段可能通过加密或者其它形式的包装进行构建,这样就比较困难和麻烦,因此,这时候就有必要选择通过提交Cook