和获取网页上的信息不同,想要进行模拟登录还需要向服务器发送一些信息,如账号、密码等等。
模拟登录一个网站大致分为这么几步:
1.先将登录网站的隐藏信息找到,并将其内容先进行保存(由于我这里登录的网站并没有额外信息,所以这里没有进行信息筛选保存)
2.将信息进行提交
3.获取登录后的信息
先给上源码
1
2
3
4
5
6
7
8
9
10
11
12
13
14
|
<span style = "font-size: 14px;" > # -*- coding: utf-8 -*- import requests def login(): session = requests.session() # res = session.get('http://my.its.csu.edu.cn/').content login_data = { 'username' : '3903150327' , 'password' : '136510' , 'enter' : 'true' } session.post( 'http://my.its.csu.edu.cn//' , data = login_data) res = session.get( 'http://my.its.csu.edu.cn/home/default' ) print (res.text) login()< / span> |
一、筛选得到隐藏信息
进入开发者工具(按f12),找到其中的network后,手动的先进行一次登录,找到其中的第一个请求,在header的底部会有一个data的数据段,这个就是登录所需的信息。如果想对其中的隐藏信息进行修改
先获取网页html的内容
1
|
res = session.get( 'http://my.its.csu.edu.cn/' ).content |
再通过正则表达式筛选内容
二、将信息进行提交
找到源码中提交表单所需要的action,和method
使用
1
|
session.post( 'http://my.its.csu.edu.cn/(这里就是提交的action)' , data = login_data) |
该方法提交信息
三、获取登录后的信息
信息提交后模拟登录就成功了
接下来就可以获取登录后的信息了
1
|
res = session.get( 'http://my.its.csu.edu.cn/home/default' ).content |
以上这篇python 网络爬虫--关于简单的模拟登录实例讲解就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持服务器之家。
原文链接:https://blog.csdn.net/M_WBCG/article/details/70243372