python爬虫MeterSphere平台执行报告流程解析

 更新时间:2023年12月24日 17:24:39   作者:友友测试猿  
这篇文章主要为大家介绍了python爬虫MeterSphere平台执行报告流程解析,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪

流程

  •     1、访问地址,请求头,请求体,请求方式
  •     2、数据处理
  •     3、数据过滤
  •     4、数据存储

导入模块

import requests
import re
import time
import datetime
from xlrd import open_workbook
from xlutils.copy import copy
import xlrd
from openpyxl import load_workbook
import os
import random
import xlwt
第一模块(使用rquest爬虫):
##登录地址
LoginUrl="http://ms.***.****:****/signin"
headers={
    "User-Agent": "Mozilla/5.0 (Windows NT 10.0; WOW64)"
    " AppleWebKit/537.36 (KHTML, like Gecko)"
        "Chrome/86.0.****.**** Safari/537.36",
      "Content-Type":"application/json"
}
#请求参数
data ={
        "username": "登录账号",
        "password": "登录密码",
        "authenticate": "LOCL"
}
#向指定的URL发送POST请求
Loginresp=requests.post(url=LoginUrl,json=data,headers=headers)
Loginresp.encoding="utf-8"
stattus=Loginresp.status_code
LogsReturn=Loginresp.text #返参
print(type(LogsReturn))
#print("状态码",stattus)
#print("返参",Loginresp.text)
#print(Loginresp.headers)

requests自带获取cookie方法,一般系统都有反爬虫机制,这个得根据每个系统不同情况判断,我们这里所用到的是正则表达,将请求头全部截获下来进行过滤处理

第二个模块(使用正则过滤)

#cookie
HeadersCookie = str(Loginresp.headers)
HeadersCookieGet = re.findall("'Set-Cookie': '(.+?);", HeadersCookie)
HeadersCookieSwitch=str(HeadersCookieGet)
CookieName = re.sub('['!"#$%&\'()*+,./:;<>?@,。?★、…【】《》?“”‘'![\\]^`{|}~\s]+', "",HeadersCookieSwitch)
#浏览器(lastProjectId),信息头(PROJECT)
LogsReturnPROJECT=re.findall('"lastProjectId":"(.+?)"',LogsReturn)
LogsReturnPROJECTSwitch=str(LogsReturnPROJECT)
LogsReturnPROJECTName = re.sub('['!"#$%&\'()*+,./:;<>?@,。?★、…【】《》?“”‘'![\\]^`{|}~\s]+', "", LogsReturnPROJECTSwitch)
# 浏览器(lastWorkspaceId),信息头(WORKSPACE)
LogsReturnWORKSPACE=re.findall('"lastWorkspaceId":"(.+?)"',LogsReturn)
LogsReturnWORKSPACESwitch=str(LogsReturnWORKSPACE)
LogsReturnWORKSPACESName=re.sub('['!"#$%&\'()*+,./:;<>?@,。?★、…【】《》?“”‘'![\\]^`{|}~\s]+', "", LogsReturnWORKSPACESwitch)
# 浏览器(csrfToken),信息头(CSRF-TOKEN)
LogsCsrfToken=re.findall('"csrfToken":"(.+?)"',LogsReturn)
LogsCsrfTokenwitch=str(LogsCsrfToken)
LogsCsrfTokenName=re.sub('['!"#$%&\'()*,.:;<>?@,。?★、…【】《》?“”‘'![\\]^`{|}~\s]+', "",LogsCsrfTokenwitch)
print("======================================================")

登录成功后我们通过访问首页报告信息,查找报告详情请求规律,一般每个首页报告都包含了一条唯一id,唯一id对应每条报告详情地址最后路径

第三个模块(爬虫报告所有场景唯一值)

# 测试报告
TestReportUrl = "http://ms.***.****:****/api/scenario/report/list/1/60"
TestReportHeaders = {
    "User-Agent": "Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/86.0.4240.198 Safari/537.36",
    "Accept": "application/json, text/plain, */*",
    "Accept-Encoding":"gzip, deflate",
    "Accept-Language":"zh-CN,zh;q=0.9",
    "Connection":"keep-alive",
    "Content-Length":"2525",
    "Content-Type":"application/json",
    "Cookie": CookieName,
    "CSRF-TOKEN":LogsCsrfTokenName,
    "Host":"ms.cic.****:****",
    "Origin":"http://ms.***.*****:****",
    "PROJECT":LogsReturnPROJECTName,
    "Referer":"http://ms.***.*****:****/",
    "WORKSPACE":LogsReturnWORKSPACESName
}
#TestReportDateGet=
#print(TestReportDateGet)
TestReportDate = {
    "projectId": "5072ac88-****-43ed-835b-93e3864f****"
}
#测试报告首页
TestReportResp = requests.post(url=TestReportUrl,json=TestReportDate, headers=TestReportHeaders)
TestReportResp.encoding = "utf-8"
TestReporReturn=TestReportResp.text

以上就是python爬虫MeterSphere平台执行报告流程解析的详细内容,更多关于python爬虫MeterSphere的资料请关注脚本之家其它相关文章!

相关文章

  • Python根据字典的值查询出对应的键的方法

    Python根据字典的值查询出对应的键的方法

    这篇文章主要介绍了Python根据字典的值查询出对应的键的方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-09-09
  • Python+PyQt5开发一个全屏水印批量添加工具

    Python+PyQt5开发一个全屏水印批量添加工具

    本文详细介绍了如何使用Python和PyQt5开发一个功能强大的全屏水印批量添加工具,支持PDF和多种图片格式,具备完整的GUI界面和批量处理能力,希望对大家有所帮助
    2025-09-09
  • 用Python实现一个简单的抽奖小程序

    用Python实现一个简单的抽奖小程序

    最近开始学习python相关知识,看最近有不少随机抽奖小程序,自己也做一个试试,下面这篇文章主要给大家介绍了关于如何利用Python实现一个简单的抽奖小程序的相关资料,需要的朋友可以参考下
    2023-05-05
  • python moviepy 的用法入门篇

    python moviepy 的用法入门篇

    MoviePy(全套文件)是一个用于视频编辑Python库:切割、拼接、标题插入,视频合成(即非线性编辑),视频处理和自定义效果的创造,本文给大家介绍python moviepy 的用法详解,感兴趣的朋友跟随小编一起看看吧
    2022-02-02
  • Python实现网页内容转纯文本与EPUB电子书的完整指南

    Python实现网页内容转纯文本与EPUB电子书的完整指南

    在信息爆炸的时代,我们每天都会浏览大量网页内容,本文将通过Python实现两种主流保存方案,即纯文本格式TXT和电子书标准格式EPUB,感兴趣的小伙伴可以了解一下
    2026-02-02
  • django 创建过滤器的实例详解

    django 创建过滤器的实例详解

    这篇文章主要介绍了django 创建过滤器的实例详解的相关资料,主要说明django 创建过滤器来统一处理字符串,需要的朋友可以参考下
    2017-08-08
  • python3 http.client 网络请求方式

    python3 http.client 网络请求方式

    这篇文章主要介绍了python3 http.client 网络请求方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2023-09-09
  • python内置函数breakpoint()与bytearray()示例详解

    python内置函数breakpoint()与bytearray()示例详解

    本文给大家分享的是python内置函数breakpoint()与bytearray()的相关资料,并给大家附上了详细代码,有需要的小伙伴可以参考下
    2017-04-04
  • Python字符串格式化f-string多种功能实现

    Python字符串格式化f-string多种功能实现

    这篇文章主要介绍了Python字符串格式化f-string格式多种功能实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-05-05
  • Python中单线程、多线程和多进程的效率对比实验实例

    Python中单线程、多线程和多进程的效率对比实验实例

    这篇文章主要介绍了Python单线程多线程和多进程效率对比,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-05-05

最新评论