发送键在xpath上填充表单以减慢(Python+Selenium)



我正在使用send_keys填充selenium中的文本字段。但是,文本显示需要几秒钟的时间。

我想快点。

这是我当前的xpath和sen_keys。

post_box = WebDriverWait(driver, 20).until(
EC.element_to_be_clickable((By.XPATH, "/html/body/div[1]/div/div[1]/div/div[4]/div/div/div[1]/div/div[2]/div/div/div/div/div[1]/form/div/div[1]/div/div/div[1]/div/div[2]/div[1]/div[1]/div[1]/div/div/div/div/div[2]/div/div/div/div"))).send_keys(self.textContents)

这是我使用的html

<div data-offset-key="a467s-0-0" class="_1mf _1mj"><span data-offset-key="a467s-0-0"><br data-text="true"></span></div>

提前谢谢。

对于Selenium来说,遍历基于xpath的长路径可能需要更多的计算时间。

一个简单的解决方案是使用相对xpath,如下所示:

//div[@attributeA='attributeA_value' and @attributeB='attributeB_value'][@attribute='attributeC_value']

示例

作为类似<div>的示例:

<div class="entry" id="element_id" value="element_value"></div>

您的有效xpath是:

//div[@class='entry' and @id='element_id'][@value='element_value']

更新你的代码块将看起来像:

post_box = WebDriverWait(driver, 20).until(EC.element_to_be_clickable((By.XPATH, "//div[@class='entry' and @id='element_id'][@value='element_value']"))).send_keys(self.textContents)

相关内容

  • 没有找到相关文章

最新更新