机器人框架 - UnicodeDecodeError:“ascii”编解码器无法解码位置 49 中的字节 0xe9:输入文本时序号不在范围(128)内

2024-02-22

我正在使用 selenium 从数据库查询值以在输入字段中输入。但是,对于某些值,我收到以下错误:

UnicodeDecodeError:“ascii”编解码器无法解码字节 0xe9 位置 49:序数不在范围内(128)

当在文本字段中输入的值类似于'Décor'。我明白是性格问题"é"。我怎样才能克服这个错误?

机器人代码:

*** Settings ***
Library    SeleniumLibrary
Library    DatabaseLibrary

*** Test cases ***
Test
    ${value}      Get value from database
    Input text    ${locator}    ${value}

*** Keywords ***
Get value from database
    ${queryResults}    Query    ${query}
    [Return]    ${queryResults}

Note:当在字段中输入文本时(步骤 2),该错误尤其会发生。将相同的值记录到控制台工作正常。


这是 py2 我怀疑这将是您使用的变量的实际类型(value);它可能是一个具有编码形式的高位 ASCII 字符的字节串。

就在使用它之前Input Text,将其转换为unicode:

${value}=    Decode Bytes To String    ${value}

如果失败 - 或者没有产生所需的结果,请尝试Convert To String:

${value}=    Convert To String    ${value}

我怀疑后者会保留其编码形式的“有问题的”字符,例如“D\xe9cor”。请在评论中告诉我,我很好奇:)

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

机器人框架 - UnicodeDecodeError:“ascii”编解码器无法解码位置 49 中的字节 0xe9:输入文本时序号不在范围(128)内 的相关文章

随机推荐