通过抓包实现Python模拟登陆各网站的原理分析是怎样的

技术通过抓包实现Python模拟登陆各网站的原理分析是怎样的这篇文章将为大家详细讲解有关通过抓包实现Python模拟登陆各网站的原理分析是怎样的,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相

本文将详细讲解Python通过抓取包来模拟登录各种网站的原理分析。本文内容质量较高,边肖分享供参考。希望你看完这篇文章后有所了解。

一、教程介绍

1.1基本介绍(Python学习资料可以通过私信编辑器001、002、003、007中的任意一个获取)

通过对登录过程的分析,利用Python实现对实验提供的某个网站的模拟登录,在实验过程中,我们将学习和练习Python的网络编程、Python的模拟登录方法,以及Firefox的数据包捕获和分析插件分析网络数据包等知识。

登录模拟可以帮助用户自动完成很多操作,在不同的场合有不同的用途。无论是自动化一些日常繁琐的操作,还是在爬虫中使用,都是一项非常实用的技能。本课程由Firefox和Python实现,环境要求如下:

Python库:urllib,http.cookiejar,Django

Firefox要求:安装实时http头插件(已提供)

通过抓包实现Python模拟登陆各网站的原理分析是怎样的

1.3材料

通过抓包实现Python模拟登陆各网站的原理分析是怎样的

1.4准备

1)安装包抓取插件Live Http Headers。

通过抓包实现Python模拟登陆各网站的原理分析是怎样的

通过抓包实现Python模拟登陆各网站的原理分析是怎样的

通过抓包实现Python模拟登陆各网站的原理分析是怎样的

通过抓包实现Python模拟登陆各网站的原理分析是怎样的

通过抓包实现Python模拟登陆各网站的原理分析是怎样的

2)启动网络应用程序

使用ps -aux | grep codebox查询获取codebox的进程号,然后使用kill -9进程号停止codebox进程。实施过程见下图:

通过抓包实现Python模拟登陆各网站的原理分析是怎样的

首先,安装django,即demo所依赖的web框架,并测试安装是否成功:

通过抓包实现Python模拟登陆各网站的原理分析是怎样的

成功启动后,在浏览器中输入http://localhost:8000/polls即可看到登录页面,表示启动成功。

通过抓包实现Python模拟登陆各网站的原理分析是怎样的

其次,分析登录过程

通过编程实现登录,首先需要了解一般Web应用的登录流程。

通过抓包实现Python模拟登陆各网站的原理分析是怎样的

2.1抓取请求

通过抓包实现Python模拟登陆各网站的原理分析是怎样的

2.2原理分析

img src="https://cache.yisu.com/upload/information/20200703/144/40408.jpg" alt="通过抓包实现Python模拟登陆各网站的原理分析是怎样的">

  通过抓包实现Python模拟登陆各网站的原理分析是怎样的

  为什么是2个请求而不是1个呢?通过分析登录请求发现,登陆成功之后服务器发送了302重定向响应,服务器要求浏览器重新请求首页,这就产生了第二个请求。再来分析第二个请求,可以看到它相比登录请求多了一个请求头:

  通过抓包实现Python模拟登陆各网站的原理分析是怎样的

  整个登录流程如下图所示:

  通过抓包实现Python模拟登陆各网站的原理分析是怎样的

  服务器到底是如何区别不同用户的session的?为什么登陆成功会后要回写cookie呢?

  通过抓包实现Python模拟登陆各网站的原理分析是怎样的

  2.3小结

  对于服务器来说,登录=验证+写session。对于浏览器来说,登录=发送登录信息+获取带sessionid的cookie。可以说,只要获得了sessionid,就算实现了模拟登录。有了它我们便可以游离于系统之中。

  三、使用Python实现登录(简单实例)

  理解了登录过程的原理和细节之后,开始用Python来编写模拟登陆程序吧。

  通过抓包实现Python模拟登陆各网站的原理分析是怎样的

  3.1导入模块

  不要忘记编写文件头、导入必要的依赖模块

  通过抓包实现Python模拟登陆各网站的原理分析是怎样的

  3.2构造登录请求

  通过抓包实现Python模拟登陆各网站的原理分析是怎样的

  登录请求的实体部分如下:

  通过抓包实现Python模拟登陆各网站的原理分析是怎样的

  通过抓包实现Python模拟登陆各网站的原理分析是怎样的

  全部Python代码:

  通过抓包实现Python模拟登陆各网站的原理分析是怎样的

  附加参数

  通过抓包实现Python模拟登陆各网站的原理分析是怎样的

  防盗链

  Web 应用的资源都是有url的,只要获得了url就能够在任何地方引用。听起来很方便,但这可能会导致你的资源被别人盗用。

  通过抓包实现Python模拟登陆各网站的原理分析是怎样的

  3.3发送请求并保存cookie

  通过抓包实现Python模拟登陆各网站的原理分析是怎样的

  Python代码如下:

  通过抓包实现Python模拟登陆各网站的原理分析是怎样的

  如果登陆成功

  通过抓包实现Python模拟登陆各网站的原理分析是怎样的

  就可以在指定的文件my_cookies.txt中看到sessionid了。

  3.4 使用cookie访问系统服务

  通过抓包实现Python模拟登陆各网站的原理分析是怎样的

  通过抓包实现Python模拟登陆各网站的原理分析是怎样的

  通过抓包实现Python模拟登陆各网站的原理分析是怎样的

  在我们模拟登录成功后,就可以直接通过opener打开这个url来使用这项系统服务。代码实现如下:

  通过抓包实现Python模拟登陆各网站的原理分析是怎样的

  如果有是在另外一个python文件中使用这个cookie的话,再打开url之前需要先载入cookie:

关于通过抓包实现Python模拟登陆各网站的原理分析是怎样的就分享到这里了,希望

内容来源网络,如有侵权,联系删除,本文地址:https://www.230890.com/zhan/133811.html

(0)

相关推荐

  • Java怎么实现教材管理系统

    技术Java怎么实现教材管理系统这篇文章给大家介绍Java怎么实现教材管理系统,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。一、项目简述功能包括: 管理员可以增删改查教材、教材商、入库教材、用户(用

    攻略 2021年11月24日
  • 如何禁用badusb(badusb代码编写规范)

    技术如何实现预防BadUSB这期内容当中小编将会给大家带来有关如何实现预防BadUSB,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。漏洞背景“BadUSB”是今年计算机安全领域的热门话

    攻略 2021年12月22日
  • 在Linux下加密授权无效的问题怎么排查

    技术在Linux下加密授权无效的问题怎么排查本篇内容主要讲解“在Linux下加密授权无效的问题怎么排查”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“在Linux下加密授权无效

    攻略 2021年11月23日
  • 如何解析Linux内核虚拟机的安全扩展KVMSEC

    技术如何解析Linux内核虚拟机的安全扩展KVMSEC如何解析Linux内核虚拟机的安全扩展KVMSEC,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。一

    攻略 2021年11月25日
  • 一份超长的MySQL学习笔记,正在更新)

    技术一份超长的MySQL学习笔记,正在更新) 一份超长的MySQL学习笔记(正在更新)学习资源
    视频资料:韩顺平讲MySQL
    MySQL安装(Windows):MySQL安装+初始化操作
    MySQL本地

    礼包 2021年11月20日
  • Python中数据结构list怎么用

    技术Python中数据结构list怎么用这篇文章给大家分享的是有关Python中数据结构list怎么用的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。list是一种有序可重复的集合,可以随时添加

    攻略 2021年11月24日