python 爬取学信网登录页面的例子


Posted in Python onAugust 13, 2019

我们以学信网为例爬取个人信息

**如果看不清楚

按照以下步骤:**

1.火狐为例 打开需要登录的网页?> F12 开发者模式 (鼠标右击,点击检查元素)?点击网络 ?>需要登录的页面登录下?> 点击网络找到 一个POST提交的链接点击?>找到post(注意该post中信息就是我们提交时需要构造的表单信息)

python 爬取学信网登录页面的例子

import requests
from bs4 import BeautifulSoup
from http import cookies
import urllib
import http.cookiejar

headers = {
  'User-Agent':'Mozilla/5.0 (Windows NT 10.0; WOW64; rv:54.0) Gecko/20100101 Firefox/54.0',
  'Referer':'https://account.chsi.com.cn/passport/login?service=https://my.chsi.com.cn/archive/j_spring_cas_security_check',
}

session = requests.Session()
session.headers.update(headers)
username = 'xxx'
password = 'xxx'
url = 'https://account.chsi.com.cn/passport/login?service=https://my.chsi.com.cn/archive/j_spring_cas_security_check'
def login(username,password,lt,_eventId='submit'):   #模拟登入函数
  #构造表单数据
  data = { #需要传去的数据
      '_eventId':_eventId,
      'lt':lt,
      'password':password, 
      'submit':u'登录',
      'username':username, 
  }
  html = session.post(url,data=data,headers=headers)

def get_lt(url):    #解析登入界面_eventId
  html = session.get(url)
  #获取 lt
  soup = BeautifulSoup(html.text,'lxml',from_encoding="utf-8")
  lt=soup.find('input',type="hidden")['value']
  return lt

lt = get_lt(url)#获取登录form表单信息 以学信网为例
login(username,password,lt)
login_url = 'https://my.chsi.com.cn/archive/gdjy/xj/show.action'
per_html = session.get(login_url)
soup = BeautifulSoup(per_html.text,'lxml',from_encoding="utf-8")
print(soup)
for tag in soup.find_all('table',class_='mb-table'):
  print(tag)
  for tag1 in tag.find_all('td'):
    title= tag1.get_text(); 
    print(title)

以上这篇python 爬取学信网登录页面的例子就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python实现zencart产品数据导入到magento(python导入数据)
Apr 03 Python
全面解读Python Web开发框架Django
Jun 30 Python
Python解析json文件相关知识学习
Mar 01 Python
详解Python的Django框架中manage命令的使用与扩展
Apr 11 Python
Python实现的自定义多线程多进程类示例
Mar 23 Python
Python装饰器原理与简单用法实例分析
Apr 29 Python
Python实现的个人所得税计算器示例
Jun 01 Python
深入学习python多线程与GIL
Aug 26 Python
windows环境中利用celery实现简单任务队列过程解析
Nov 29 Python
jupyter notebook远程访问不了的问题解决方法
Jan 11 Python
python 实现德洛内三角剖分的操作
Apr 22 Python
python实现简易自习室座位预约系统
Jun 30 Python
利用anaconda作为python的依赖库管理方法
Aug 13 #Python
基于Python的图像数据增强Data Augmentation解析
Aug 13 #Python
python通过txt文件批量安装依赖包的实现步骤
Aug 13 #Python
Python Multiprocessing多进程 使用tqdm显示进度条的实现
Aug 13 #Python
python如何将多个PDF进行合并
Aug 13 #Python
python批量读取文件名并写入txt文件中
Sep 05 #Python
Flask框架实现的前端RSA加密与后端Python解密功能详解
Aug 13 #Python
You might like
PHP 采集程序原理分析篇
2010/03/05 PHP
php学习笔记 数组遍历实现代码
2011/06/09 PHP
php获取远程图片的两种 CURL方式和sockets方式获取远程图片
2011/11/07 PHP
ThinkPHP表单令牌错误的相关解决方法分析
2016/05/20 PHP
php查询及多条件查询
2017/02/26 PHP
php根据地址获取百度地图经纬度的实例方法
2019/09/03 PHP
javascript作用域容易记错的两个地方分析
2012/06/22 Javascript
jquery获取tr中控件值并操作tr实现思路
2013/03/27 Javascript
jquery.Ajax()方法调用Asp.Net后台的方法解析
2014/02/13 Javascript
返回顶部按钮响应滚动且动态显示与隐藏
2014/10/14 Javascript
Bootstrap每天必学之导航
2015/11/26 Javascript
javascript的理解及经典案例分析
2016/05/20 Javascript
webix+springmvc session超时跳转登录页面
2016/10/30 Javascript
JS实现页面中所有img对象添加onclick事件及新窗口查看图片的方法
2016/12/27 Javascript
jQuery设计思想
2017/03/07 Javascript
浅谈Vue的加载顺序探讨
2017/10/25 Javascript
微信小程序返回多级页面的实现方法
2017/10/27 Javascript
解决Vue2.0中使用less给元素添加背景图片出现的问题
2018/09/03 Javascript
vue之a-table中实现清空选中的数据
2019/11/07 Javascript
H5实现手机拍照和选择上传功能
2019/12/18 Javascript
Python3.2中Print函数用法实例详解
2015/05/19 Python
Python基础练习之用户登录实现代码分享
2017/11/08 Python
python操作excel的方法
2018/08/16 Python
用Python实现筛选文件脚本的方法
2018/10/27 Python
python+opencv实现高斯平滑滤波
2020/07/21 Python
python将unicode和str互相转化的实现
2020/05/11 Python
Python 整行读取文本方法并去掉readlines换行\n操作
2020/09/03 Python
PHP中如何使用Cookie
2015/10/28 面试题
大家检讨书5000字
2014/02/03 职场文书
一份创业计划书范文
2014/02/08 职场文书
员工薪酬激励方案
2014/06/13 职场文书
党的群众路线教育实践活动个人整改措施范文
2014/11/04 职场文书
公务员廉洁从政心得体会
2016/01/19 职场文书
你知道哪几种MYSQL的连接查询
2021/06/03 MySQL
Golang并发工具Singleflight
2022/05/06 Golang
windows server2012 R2下安装PaddleOCR服务的的详细步骤
2022/09/23 Servers