如何使用 Robot Framework 解析电子邮件正文 [英] How to parse email body with Robot Framework

查看:69
本文介绍了如何使用 Robot Framework 解析电子邮件正文的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在尝试使用 Robot Framework 中的 ImapLibrary2 解析电子邮件 (gmail) 中的特定字符串.

I'm tryin to parse a specific string from an email(gmail) using the ImapLibrary2 in Robot Framework.

这是我正在尝试使用的代码 -

Here is the code I'm trying to use -

Email Parsing

Open Mailbox    host=imap.gmail.com    user=testing.abc@gmail.com    password=Secret
${LATEST} =     Wait For Email    sender=support@abc.net    timeout=60
${HTML} =       Get Email Body    ${LATEST}
${Paser_Body}=  Get Regexp Matches    ${HTML}    ^.*([a-zA-Z]+(\d[a-zA-Z]+)+).*$
Log    ${Paser_Body}
Close Mailbox

电子邮件正文是-

Reset Your Password
To reset the password for the user account associated with your email, use the code below and follow the procedure on the application. If you don't want to reset your password, please disregard this email.

ASNjfO24j6RrwKg6PP3scO1EeivA88



Thanks,
Abc Support Team

我想从电子邮件中提取令牌 ASNjfO24j6RrwKg6PP3scO1EeivA88,但是运行代码,我得到一个空输出.

I want to extract the token ASNjfO24j6RrwKg6PP3scO1EeivA88 from the email, but run the code, I get a null output.

输出-

Starting test: Test.Email Parsing 
20210317 11:53:21.493 :  INFO : ${LATEST} = 29 
20210317 11:53:21.630 :  INFO :   ${HTML} = 
        <tbody>     
            <tr>        
               <td style="padding:40px 0  0 0;">            
                  <p style="color:#000;font-size: 16px;line-height:24px;font-family:'HelveticaNeue','Helvetica Neue',Helvetica,Arial,sans-serif;font-weight:no...  
20210317 11:53:21.630 :  INFO : ${Paser_Body} = []  
20210317 11:53:21.630 :  INFO : []  
Ending test: Test .Email Parsing

我做错了什么?

推荐答案

我能够通过-

第一步:使用正则表达式去除不需要的字符串
第 2 步:拆分字符串
第 3 步:从列表中获取所需元素

Step 1: Remove unnecessary string using Regular Expression
Step 2: Splitting the string
Step 3: Getting the required element from the list

这是示例代码-

Open Mailbox    host=imap.gmail.com    user=testing.abc@gmail.com    password=Secret
${LATEST} =     Wait For Email    sender=support@abc.net    timeout=60
${HTML} =       Get Email Body    ${LATEST}
${Paser_Body}=  Remove String Using Regexp    ${HTML}    (<.*?>)    #remove tags
${Parsed_Token}=    Split String    ${Parser_Body_Text}
${Parsed_Token}=    Get From List    ${Parsed_Token}    20  #position in the list
Close Mailbox

这篇关于如何使用 Robot Framework 解析电子邮件正文的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆