zoukankan      html  css  js  c++  java
  • python接口自动化测试十四: 用正则表达式提取数据

    python接口自动化测试十四: 用正则表达式提取数据

     
    import requests
    import re

    url = 'xxxx'
    r = requests.post(url)

    # 正则公式:
    postid = re.findall(r"(.+?)", r.url)    # r.url:匹配的url对象


    # ^表示从头开始匹配
    u = re.findall(r"^(.+?)?", url)
    
    
    # 如果参数在末尾,匹配到最后
    # 参数:postid=35454&actiontip=按时发
    res = re.findall(r"actiontip=(.+?)$", r.url)
    
    
    # 知道字符串前、后,取中间,这里的前、后所代表的值须为固定不变的
    postid = re.findall(r"前(.+?)后", r.url)

    # 参数:postid=35454&actiontip=按时发
    # 取:35454   前“postid=”   后“&”
    postid = re.findall(r"postid=(.+?)&", r.url)
    print(postid)       # 这里是list
    print(postid[0])    # 提取为字符串



    # 参数关联
    url1 = 'xxxxx'
    body = {'postid': postid}
    r1 = requests.post(url, json=body)
    # 判断请求是否成功
    if r1.json()['xx']:
      print('成功')
    else:
      print('失败')

     '''

    # 正则提取需要的参数值
    import re
    postid = re.findall(r"postid=(.+?)&", r2.url)
    print postid 
    # 这里是list

    # 提取为字符串
    print postid[0]

    1.先导入re模块
    2.re.findall(匹配规则,查找对象)是查找所有符合规则的
    3. postid=(.+?)&  这个意思是查找postid=开头,&结尾的,返回字符串中间内容,如:postid=12345&a=111
    那就返回[‘12345’]
    4.返回的结果是list
    5.list[0]是取下标第一个
    '''
    创作不易,转摘请标明出处。如果有意一起探讨测试相关技能可加博主QQ 771268289
  • 相关阅读:
    Scala编译环境搭建(mac IDEA)
    Scala初见
    boost spirit使用
    基于OPENCV的图像融合
    C++获取hostname&IP&MAC地址
    httpd启动检查
    react eslint 代码格式补全的插件
    将html页面导出为word
    redux的笔记
    img onerror事件的使用
  • 原文地址:https://www.cnblogs.com/dwdw/p/9553192.html
Copyright © 2011-2022 走看看