python接口自动化(十四)--session关联接口(详解)

简介: 上一篇cookie绕过验证码模拟登录博客园,但这只是第一步,一般登录后,还会有其它的操作,如发帖,评论等等,这时候如何保持会话呢?这里我以jenkins平台为例,给小伙伴们在沙场演练一下。

简介


  

上一篇cookie绕过验证码模拟登录博客园,但这只是第一步,一般登录后,还会有其它的操作,如发帖,评论等等,这时候如何保持会话呢?这里我以jenkins平台为例,给小伙伴们在沙场演练一下。


session简介



1、通过help方法查看帮助文档,截图一部分,后面省略了,有兴趣的自己可以敲一下看看


1232840-20190403162623701-1650488720.png


2、参考代码


 # coding:utf-8
 import requests
 help(requests.session())


使用session登录



1、使用session登录只需在登录的基础上稍做修改,即可

1232840-20190409113139413-1149291392.png


2、参考代码


# coding:utf-8
import requests
# 先打开登录首页,获取部分session
url = "http://localhost:8080/jenkins/j_acegi_security_check"
headers = {
            "User-Agent": "Mozilla/5.0 (Windows NT 10.0; WOW64; rv:44.0) Gecko/20100101 Firefox/44.0"
           }  # get方法其它加个ser-Agent就可以了
d = {"j_username": "admin",
     "j_password": "111111",
     "from": "",
     "Submit": u"登录",
     "remember_me": "on"
     }
s = requests.session()
r = s.post(url, headers=headers, data=d)
#print (r.content.decode('utf-8'))


保存编辑



1、先打开新建任务,手动输入任务名称和选择下边选项后,打开fiddler抓包,然后点击“确定”


1232840-20190409112640867-1436217274.png


fiddler抓包


1232840-20190409112939013-755978808.png


2、把body的参数内容写成字典格式

1232840-20190409132923437-1230626099.png


参考代码:


body = {"name":"北京-宏哥1",
         "mode": "hudson.model.FreeStyleProject",
        "Jenkins-Crumb":"51a97fc7fbf3792823230d9bdd7ec906",
        "json":{"name":"北京-宏哥1",
                 "mode": "hudson.model.FreeStyleProject",
                 "Jenkins-Crumb":"51a97fc7fbf3792823230d9bdd7ec906"
         }
 }


3、用上面登录保存的session继续发送post请求,来新建任务

1232840-20190409133031677-6251901.png


4、执行后,查看所有任务就多了一条新增的了

1232840-20190409132752754-1308665219.png


5、运行结果部分截图:


1232840-20190409135811981-1266307704.png


6、粘贴到记事本修改后缀查看:


1232840-20190409135849947-1352095135.png


参考代码



 # coding:utf-8
 import requests
# 先打开登录首页,获取部分session
 url = "http://localhost:8080/jenkins/j_acegi_security_check"
 headers = {
             "User-Agent": "Mozilla/5.0 (Windows NT 10.0; WOW64; rv:44.0) Gecko/20100101 Firefox/44.0"
            }  # get方法其它加个ser-Agent就可以了
 d = {"j_username": "admin",
      "j_password": "111111",
     "from": "",
      "Submit": u"登录",
      "remember_me": "on"
     }
 s = requests.session()
 r = s.post(url, headers=headers, data=d)
 #print (r.content.decode('utf-8'))
 # 正则表达式提取账号和登录按钮
 import re
 t = re.findall(r'<b>(.+?)</b>', r.content.decode('utf-8'))   # 用python3的这里r.content需要解码
 print (t[0])
 print (t[1])
 #新建任务
 url1 = "http://localhost:8080/jenkins/createItem"
 body = {"name":"北京-宏哥1",
         "mode": "hudson.model.FreeStyleProject",
         "Jenkins-Crumb":"51a97fc7fbf3792823230d9bdd7ec906",
         "json":{"name":"北京-宏哥1",
                "mode": "hudson.model.FreeStyleProject",
                 "Jenkins-Crumb":"51a97fc7fbf3792823230d9bdd7ec906"
         }
 }
 r2 = s.post(url1, data=body, verify=False)
 print (r2.content.decode('utf-8'))


这里我是用新建任务写的案例,小伙伴可以试下Jenkins里边其他的关联接口


小结



小伙伴都看到了吧,session关联接口就是这么简单!!!赶快动起来吧。想要学习的小伙伴可以用博客园来练习一下,遇到问题欢迎打扰和沟通!

相关文章
|
20天前
|
搜索推荐 Python
使用Python自动化生成物业通知单
本文介绍如何使用Python结合Pandas和python-docx库自动化生成物业通知单。通过读取Excel数据并填充至Word模板,实现高效准确的通知单批量制作。包括环境准备、代码解析及效果展示,适用于物业管理场景。
58 14
|
23天前
|
数据采集 数据可视化 数据挖掘
利用Python自动化处理Excel数据:从基础到进阶####
本文旨在为读者提供一个全面的指南,通过Python编程语言实现Excel数据的自动化处理。无论你是初学者还是有经验的开发者,本文都将帮助你掌握Pandas和openpyxl这两个强大的库,从而提升数据处理的效率和准确性。我们将从环境设置开始,逐步深入到数据读取、清洗、分析和可视化等各个环节,最终实现一个实际的自动化项目案例。 ####
|
10天前
|
JSON 数据可视化 测试技术
python+requests接口自动化框架的实现
通过以上步骤,我们构建了一个基本的Python+Requests接口自动化测试框架。这个框架具有良好的扩展性,可以根据实际需求进行功能扩展和优化。它不仅能提高测试效率,还能保证接口的稳定性和可靠性,为软件质量提供有力保障。
34 7
|
7天前
|
分布式计算 大数据 数据处理
技术评测:MaxCompute MaxFrame——阿里云自研分布式计算框架的Python编程接口
随着大数据和人工智能技术的发展,数据处理的需求日益增长。阿里云推出的MaxCompute MaxFrame(简称“MaxFrame”)是一个专为Python开发者设计的分布式计算框架,它不仅支持Python编程接口,还能直接利用MaxCompute的云原生大数据计算资源和服务。本文将通过一系列最佳实践测评,探讨MaxFrame在分布式Pandas处理以及大语言模型数据处理场景中的表现,并分析其在实际工作中的应用潜力。
34 2
|
14天前
|
数据采集 存储 API
利用Python爬虫获取1688关键词接口全攻略
本文介绍如何使用Python爬虫技术合法合规地获取1688关键词接口数据,包括环境准备、注册1688开发者账号、获取Access Token、构建请求URL、发送API请求、解析HTML及数据处理存储等步骤,强调遵守法律法规和合理使用爬虫技术的重要性。
|
23天前
|
安全 API 文件存储
Yagmail邮件发送库:如何用Python实现自动化邮件营销?
本文详细介绍了如何使用Yagmail库实现自动化邮件营销。Yagmail是一个简洁强大的Python库,能简化邮件发送流程,支持文本、HTML邮件及附件发送,适用于数字营销场景。文章涵盖了Yagmail的基本使用、高级功能、案例分析及最佳实践,帮助读者轻松上手。
31 4
|
23天前
|
敏捷开发 测试技术 持续交付
自动化测试之美:从零开始搭建你的Python测试框架
在软件开发的马拉松赛道上,自动化测试是那个能让你保持节奏、避免跌宕起伏的神奇小助手。本文将带你走进自动化测试的世界,用Python这把钥匙,解锁高效、可靠的测试框架之门。你将学会如何步步为营,构建属于自己的测试庇护所,让代码质量成为晨跑时清新的空气,而不是雾霾中的忧虑。让我们一起摆脱手动测试的繁琐枷锁,拥抱自动化带来的自由吧!
|
测试技术 Python
python接口自动化(五)--接口测试用例和接口测试报告模板(详解)
当今社会在测试领域,接口测试已经越来越多的被提及,被重视,而且现在好多招聘信息要对接口测试提出要求。区别于传统意义上的系统级别测试,很多测试人员在接触到接口测试的时候,也许对测试执行还可以比较顺利的上手,但一 提到相关的文档,比如测试用例和报告,就有些不知所措了。这类问题在我加入的几个测试的群里,经常看到一些人在不断提问。   今天就用这篇文章来说说接口测试用例和报告。
448 2
python接口自动化(五)--接口测试用例和接口测试报告模板(详解)
|
Web App开发 网络协议 jenkins
python接口自动化(四)--接口测试工具介绍(详解)
如果有工具,可以大大提高你的效率,可以达到事半功倍,但是不是所有工具都能够支持你完成这个任务。下面我们就来挑选几个常用和常见的工具,简单介绍一下。如果需要或者有兴趣可以在网上查看各种工具对应的资料进行深入人的学习,这里带领大家了解一下,碰到这些工具会用、了解、知道这些工具就达到目的了,不要到时候说到测试工具,一问三不知,一脸懵逼,那样就尴尬
385 1
python接口自动化(四)--接口测试工具介绍(详解)