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实现登陆知乎获得个人收藏并保存为word文件
Mar 16 Python
Python使用redis pool的一种单例实现方式
Apr 16 Python
python用模块zlib压缩与解压字符串和文件的方法
Dec 16 Python
Python面向对象编程基础解析(一)
Oct 26 Python
浅谈配置OpenCV3 + Python3的简易方法(macOS)
Apr 02 Python
基于Python List的赋值方法
Jun 23 Python
Python+selenium点击网页上指定坐标的实例
Jul 05 Python
python 两个数据库postgresql对比
Oct 21 Python
Pytorch 多块GPU的使用详解
Dec 31 Python
python实现梯度下降和逻辑回归
Mar 24 Python
Python通过递归函数输出嵌套列表元素
Oct 15 Python
一行Python命令实现批量加水印
Apr 07 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 彩色文字实现代码
2009/06/29 PHP
PHP5中使用PDO连接数据库的方法
2010/08/01 PHP
php抓取并保存网站图片的实现代码
2015/10/28 PHP
简单了解将WordPress中的工具栏移到底部的小技巧
2015/12/31 PHP
PHP session 会话处理函数
2016/06/06 PHP
PHP命令行执行整合pathinfo模拟定时任务实例
2016/08/12 PHP
php中的依赖注入实例详解
2019/08/14 PHP
PHP 文件写入和读取操作实例详解【必看篇】
2019/11/04 PHP
Javascript中的String对象详谈
2014/03/03 Javascript
js实现checkbox全选和反选示例
2014/05/01 Javascript
jQuery表单验证之密码确认
2017/05/22 jQuery
微信打开网址添加在浏览器中打开提示的办法
2019/05/20 Javascript
基于vue、react实现倒计时效果
2019/08/26 Javascript
纯异步nodejs文件夹(目录)复制功能
2019/09/03 NodeJs
jquery实现掷骰子小游戏
2019/10/24 jQuery
Python THREADING模块中的JOIN()方法深入理解
2015/02/18 Python
Python字符串处理函数简明总结
2015/04/13 Python
python字符串对其居中显示的方法
2015/07/11 Python
Python学习之Django的管理界面代码示例
2018/02/10 Python
Python中的Django基本命令实例详解
2018/07/15 Python
详解Python做一个名片管理系统
2019/03/14 Python
python pptx复制指定页的ppt教程
2020/02/14 Python
python实现ping命令小程序
2020/12/28 Python
世界上最好的儿童品牌:AlexandAlexa
2018/01/27 全球购物
澳大利亚拥有最佳跳伞降落点和最好服务的跳伞项目运营商:Skydive Australia
2018/03/05 全球购物
求最大连续递增数字串(如"ads3sl456789DF3456ld345AA"中的"456789")
2015/09/11 面试题
大学生求职简历的自我评价范文
2013/10/12 职场文书
英语专业职业生涯规划范文
2014/03/05 职场文书
2014新课程改革心得体会
2014/03/10 职场文书
疾病防治方案
2014/05/31 职场文书
2015年党风廉政建设工作总结
2015/04/09 职场文书
小学六一儿童节活动总结
2015/05/05 职场文书
餐馆开业致辞
2015/08/01 职场文书
Python 流媒体播放器的实现(基于VLC)
2021/04/28 Python
Python echarts实现数据可视化实例详解
2022/03/03 Python
mysql5.5中文乱码问题解决的有用方法
2022/05/30 MySQL