Python/Selenium没有向输入字段发送波浪形字符(~)

Python/Selenium没有向输入字段发送波浪形字符(~),python,selenium-webdriver,chrome-web-driver,Python,Selenium Webdriver,Chrome Web Driver,我正在尝试使用Python/Selenium/Webdriver自动填充Chrome网页中的输入字段。但是,我无法使用“发送密钥”来填充波浪线字符 以下是我到目前为止所做的尝试: import os import sys from selenium import webdriver from selenium.webdriver.common.keys import Keys from selenium.webdriver.support.ui import Select browser =

我正在尝试使用Python/Selenium/Webdriver自动填充Chrome网页中的输入字段。但是,我无法使用“发送密钥”来填充波浪线字符

以下是我到目前为止所做的尝试:

import os
import sys
from selenium import webdriver
from selenium.webdriver.common.keys import Keys
from selenium.webdriver.support.ui import Select

browser = webdriver.Chrome(executable_path=r"chromedriver.exe")

browser.get("https://mywebpageaddress")

browser.find_element_by_id("username").send_keys('charles~18')
但是“~”瓷砖没有出现在球场上

它的填充方式是“charles18”,而不是“charles18”


有什么帮助吗?谢谢

根据文档,您可以调用多时间发送密钥方法

试试这个。 1.按拆分url~ 2.逐个发送每个碎片。 3.仅适用于~只需发送其unicode“\ue07E”

但是,这并没有在任何地方指定。但7E是unicode的~ selenium的特殊键映射是。希望这有帮助


selenium键的Java doc是

表单字段是否有javascript限制输入仅为字母数字字符?不,它没有。可以通过浏览器界面手动写入“charles~18”。您是否尝试使用u'charles~18',即显式指定字符串的unicode长度?我刚刚尝试使用u'charles~18',但仍然无法使用..:/试试这个:
browser.find\u element\u by\u id(“username”).send\u keys('charles{}18')
我知道这个问题是关于Phyton的,但我在.NET Core上遇到了完全相同的问题。发送unicode没有帮助,所以我不得不直接在浏览器上使用javascript(正如其他评论中提到的@hiren sudgeted)。对于感兴趣的人:public static void JsSetValue(IWebDriver驱动程序,IWebElement元素,字符串文本){var jse=(IJavaScriptExecutor)驱动程序;jse.ExecuteScript(“参数[0]。值=参数[1];”,元素,文本);}