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、日志打印,可以看到我們日志中的每個走向

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM