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实现的矩阵类实例
Aug 22 Python
python matplotlib画图实例代码分享
Dec 27 Python
Python实现从log日志中提取ip的方法【正则提取】
Mar 31 Python
python 自动批量打开网页的示例
Feb 21 Python
scrapy-redis的安装部署步骤讲解
Feb 27 Python
PyQt5的安装配置过程,将ui文件转为py文件后显示窗口的实例
Jun 19 Python
python实现拉普拉斯特征图降维示例
Nov 25 Python
浅谈spring boot 集成 log4j 解决与logback冲突的问题
Feb 20 Python
python实现滑雪者小游戏
Feb 22 Python
python 画条形图(柱状图)实例
Apr 24 Python
pycharm 代码自动补全的实现方法(图文)
Sep 18 Python
python 实现汉诺塔游戏
Nov 28 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-fpm的配置详解
2013/06/03 PHP
PHP变量的定义、可变变量、变量引用、销毁方法
2013/12/20 PHP
豆瓣网的jquery代码实例
2008/06/15 Javascript
初试jQuery EasyUI 使用介绍
2010/04/01 Javascript
javascript Array.prototype.slice使用说明
2010/10/11 Javascript
js日期时间补零的小例子
2013/03/05 Javascript
ExtJS4中的requires使用方法示例介绍
2013/12/03 Javascript
引用其它js时如何同时处理多个window.onload事件
2014/09/02 Javascript
Jquery实现select multiple左右添加和删除功能的简单实例
2016/05/26 Javascript
Javascript实现图片不间断滚动的代码
2016/06/22 Javascript
Js操作DOM元素及获取浏览器高宽的简单方法
2016/09/08 Javascript
jQuery中fadein与fadeout方法用法示例
2016/09/16 Javascript
Angular.js自定义指令学习笔记实例
2017/02/24 Javascript
node操作mysql数据库实例详解
2017/03/17 Javascript
详解Vue 实例中的生命周期钩子
2017/03/21 Javascript
ES6中module模块化开发实例浅析
2017/04/06 Javascript
javascript中json对象json数组json字符串互转及取值方法
2017/04/19 Javascript
基于jQuery中ajax的相关方法汇总(必看篇)
2017/11/08 jQuery
Vue中跨域及打包部署到nginx跨域设置方法
2019/08/26 Javascript
jQuery实现简单日历效果
2020/07/05 jQuery
Python实现最常见加密方式详解
2019/07/13 Python
Keras预训练的ImageNet模型实现分类操作
2020/07/07 Python
Selenium之模拟登录铁路12306的示例代码
2020/07/31 Python
加拿大快时尚零售商:Ardene
2018/02/14 全球购物
创造美妙香氛体验:Aera扩散器和香水
2018/11/25 全球购物
eBay加拿大站:eBay.ca
2019/06/20 全球购物
高中英语教学反思
2014/02/04 职场文书
光信息科学与技术专业职业生涯规划
2014/03/13 职场文书
励志演讲稿大全
2014/08/21 职场文书
欢迎新生标语2015
2015/07/16 职场文书
心理健康教育培训研修感言
2015/11/18 职场文书
《兰兰过桥》教学反思
2016/02/20 职场文书
MySQL 自定义变量的概念及特点
2021/05/13 MySQL
解决numpy和torch数据类型转化的问题
2021/05/23 Python
win10更新失败无限重启解决方法
2022/04/19 数码科技
基于Python实现西西成语接龙小助手
2022/08/05 Golang