• robotframework实战三--自定义关键字


    在rf的实战1中,我的登录获取验证码就使用了自定义关键字,具体怎么做的,如下

    1.新建文件夹

    新建一个文件夹,我的MyLibrary,并且存放在site-packages下

    2.编写代码

    在python的编译器中把需要的代码编写完成,并且运行成功,以下代码就是获取页面的session,生成随机数,拿到session+key+随机数,生成MD5,在和请求一起get请求,返回验证码,代码在本地编译没有问题

    import random
    import hashlib
    import types
    import requests
    key="XXXXXXXXX"
    class verificationCode(object):
        def __init__(self):
            self.encryptiontest = ''
        def code(self,cookie):
         # 随机数
            letter = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ"
            requestId = []
            requestId.append(''.join(random.sample(list(letter), 6)))
            randomNumber=''.join(requestId)
            data = "a:1:{s:10:"session_id";s:26:"" + cookie + "";}"
            getsign = key + randomNumber + data  # 获得密匙
            # MD5加密
            m = hashlib.md5()
            m.update(getsign)
            self.encryptiontest=m.hexdigest()
            #get请求
            url = "https://rosewholesale.com/auto/api.php"
            textmod = {'XXXX': 'XXX', 'act': 'XXX', 'requestId': randomNumber, 'sign': self.encryptiontest, 'data': data,'ftc': 'XXXX'}
            r = requests.get(url, params=textmod)
            print "code:",r.status_code
            getcontent=r.text
            print u'返回的内容:',getcontent
            converturl = str(getcontent)
            splitStr = converturl[-76:-70]
            print u'验证码为:',splitStr
            return  splitStr
    
    if __name__ == '__main__':
        verif=verificationCode()
        verif.code('aq3k8qphile1nrknarpnjb9eg0')
    

    3.文件夹创建一个init文件,如下

    文件夹中包含两个py文件

    4.rf导入文件

     

    如果导入后没有显示红色说明导入成功

    5.使用自定义关键字

    使用F5查找,查看是否引入了文件夹 

    使用在项目中

    可以看见我的项目中是需要一个页面的cookie,目前获取的cookie给了一个变量cookie,而code就是我们刚刚定义的变量,把cookie给code,在到id为code的输入框中进行输入(验证码输入框),输入

    你看是否成功,1.界面显示 2、日志打印,可以看到我们日志中的每个走向

     

  • 相关阅读:
    hihocoder 1049 后序遍历
    hihocoder 1310 岛屿
    Leetcode 63. Unique Paths II
    Leetcode 62. Unique Paths
    Leetcode 70. Climbing Stairs
    poj 3544 Journey with Pigs
    Leetcode 338. Counting Bits
    Leetcode 136. Single Number
    Leetcode 342. Power of Four
    Leetcode 299. Bulls and Cows
  • 原文地址:https://www.cnblogs.com/chongyou/p/7891949.html
Copyright © 2020-2023  润新知