Python爬虫登录大学官网
Python爬虫登录大学官网
通过python登录大学官网(当然首先要有账号密码),内容包括:如何使用chrome查看网页信息和网络请求、分析网站通过js加密用户密码的方式、使用python登录网站。(不同官网的登录方式不尽相同,本文仅供参考)
目录
- Python爬虫登录大学官网
- 一、使用Chrome查看网页信息和网络请求
- 1.1 Element功能模块
- 1.2 Network功能模块
- 1.3 Sources功能模块
- 二、分析网站js加密方式
- 2.1 查找加密函数并设置断点
- 2.2 用错误密码调试找到所有js加密的代码
- 三、使用python登录网站
- 参考文献:
一、使用Chrome查看网页信息和网络请求
首先打开所要解析的网站,点击F12(要打开Fn)或者右键->检查。本次主要用到Element、Source、Network三个功能。
1.1 Element功能模块
点击Element可以查看网页html源码,点击ctrl+f可以在箭头处中查找源码中的匹配字符等。
1.2 Network功能模块
点击Network可以查看网页与服务器端的交互信息,本文中主要用来查看发送的登录请求。
headers中可查看请求头信息,payload中的From Data查看网页向服务器请求所提交的内容。可以看到请求内容中的password是经过了加密的(输入的测试用错误密码是1234)。
1.3 Sources功能模块
查看网页的组成,包括css、js、image等。左边是网页的源码文件夹(右键可以查找匹配字符串),中间是所选文件的源码区(点击花括号可以格式化源码(pretty print)),右边是调试js代码时所用到的监控区。
二、分析网站js加密方式
2.1 查找加密函数并设置断点
查找加密方式简单粗暴的方式就是直接在文件夹中查找“encrypt”(加密)。找到响应的函数,并点击该行js代码设置断点。
2.2 用错误密码调试找到所有js加密的代码
设置完断点之后,输入错误密码,点击登录。程序会在断点处停止,右上角(或者左下角)控制调试区分别是继续运行、跳过下个函数、进入下个函数、跳出当前函数、逐步运行。通过call stack可以看到函数的调用次序。
查看调用栈的函数,发现最顶层函数_etd2中参数就是输入的密码,另一个参数是pwdDefaultEncryptSalt(在html文件中查找字符串可以发现就在html中获取)。通过调用栈右侧可以看到加密用到的js文件。
在这个js文件中查找etd2便可找到该函数的定义,在该函数中设置断点并继续运行。进入这个函数后逐步运行发现该函数返回值像是请求中的密码。记录这个返回值。
点击继续运行,js代码运行完了,网页显示密码错误(因为输入的是错误的密码)。在network中查看login请求中的payload中的password值,发现与刚才的返回值相同,所以etd2就是用来加密的最顶层js函数。至此已经完全找到了加密的js代码,可以将加密所用的js文件保存下来,用python调用js代码(当然需要稍加修改,具体可以看渗透测试-python破解前端js加密
)etd2函数获取返回值。
三、使用python登录网站
这部分暂时没写,我的,在参考文献里有如何使用python运行js并且通过session登录网页,有兴趣可以自己看看。
参考文献:
python3下使用requests实现模拟用户登录 —— 基础篇(马蜂窝)
python3下使用requests模拟用户登录 —— 中级篇(百度云俱乐部)
python版 —— 验证码校验 打码兔平台的使用介绍
一次完整的渗透测试流程
渗透测试-python破解前端js加密
获取请求中的It,dllt
Python爬虫登录大学官网相关推荐
- 超级简单的Python爬虫教程,python爬虫菜鸟教程官网
毫无基础的人如何入门 Python ? Python是一种计算机程序设计语言.你可能已经听说过很多种流行的编程语言,比如非常难学的C语言,非常流行的Java语言,适合初学者的Basic语言,适合网页编 ...
- 用selenium模拟登录魅族官网(针对于点触点选验证码的识别)
博主是爬虫菜鸡,对于验证码的识别这一块内容是十分的无力,最近按照崔庆才老师的<python3网络爬虫开发实战进行学习>,由于操作系统与老师的不同,技术更新快等多种因素,光是对老师书中的代码 ...
- 用python输出所有的玫瑰花数_用Python爬取WordPress官网所有插件
转自丘壑博客,转载注明出处 前言 只要是用WordPress的人或多或少都会装几个插件,可以用来丰富扩展WordPress的各种功能.围绕WordPress平台的插件和主题已经建立了一个独特的经济生态 ...
- python爬虫登录12306失败_Python网络爬虫(selenium模拟登录12306网站)
一.通过selenium自动登录12306官网 1.1 超级鹰打码平台API,创建chaojiyin.py文件 #!/usr/bin/env python#coding:utf-8 importreq ...
- python爬虫爬猎聘网获取多条职责描述中有Linux需求的招聘信息
python爬虫爬猎聘网获取多条职责描述中有Linux需求的招聘信息 下列是我爬虫的作业 摘 要 随着现代化社会的飞速发展,网络上巨大信息量的获取给用户带来了许多的麻烦.由于工作和生活节奏的需求,人们 ...
- python 爬虫 微博 github_GitHub 热门:各大网站的 Python 爬虫登录汇总
原标题:GitHub 热门:各大网站的 Python 爬虫登录汇总 (给数据分析与开发加星标,提升数据技能) 转自:机器之心,GitHub 作者:CriseLYJ 不论是自然语言处理还是计算机视觉,做 ...
- 【python】上传 Python 包到 pypi 官网
一. 概述 在上一篇[爬虫]将 Scrapy 部署到 k8s文章中提到在自定义 spiderkeeper 镜像时报错,所以自己基于它的源码提交了一个叫做 spiderkeeper-new 的 pyth ...
- Python爬虫(6):煎蛋网全站妹子图爬虫
Python爬虫(6):煎蛋网全站妹子图爬虫 上一篇文章中我们抓取了豆瓣图书的数据,如果大家运行成功,并且看到文件夹下的 txt 文件了.是不是有一种刚接触编程,第一次输出Hello world!时的 ...
- 在当当买了python怎么下载源代码-python爬虫爬取当当网
[实例简介]python爬虫爬取当当网 [实例截图] [核心代码] ''' Function: 当当网图书爬虫 Author: Charles 微信公众号: Charles的皮卡丘 ''' impor ...
最新文章
- linux 唯一行数量,linux – 确定bash中具有awk或类似内容的唯一行数
- 市场营销部门OKR案例
- K3s初探:Rancher架构师带你尝鲜史上最轻量Kubernetes发行版
- 【听课笔记】2009 Google OpenSocial-CSDN开放平台交流会笔记
- 第四篇 HTML 表单深入了解、注释和a标签的运用
- Codeforces 1149 题解
- VUE向django发送post返回403:CSRF Failed: CSRF token missing or incorrect
- 剪切文件_lammps模拟带缺陷镍板剪切变形(in文件及注释)
- thief book怎么用_战略管理工具箱--30个好用的战略管理好工具
- LeetCode 683. K 个空花盆(set/滑动窗口)
- Kafka测试1.0.0
- Springboot整合RabbitMQ,包含direct,topic,fanout三种模式的整合
- 页面404?找不到页面咋整?
- ngix入门 Linux系统Ubuntu ngix安装
- excel概率密度函数公式_标准正态分布密度函数公式
- 开机就显示重启界面,Lenovo重装Win 10系统的解决办法之一
- 类似京东淘宝历史搜索自适应长度搜索项超两行折叠功能实现
- 这个社交聊天 App 开源了!
- 建模 渲染 计算机配置,设计师专用电脑 8000元i5-7500独显专业渲染建模电脑配置推荐...
- webrtc 入门第一章 基本设备操作