【问题标题】:Entering text to span Selenium/Python输入文本以跨越 Selenium/Python
【发布时间】:2023-04-04 13:35:01
【问题描述】:

我尝试输入跨越“SAMPLE TEXT”的文本。我正在使用 Selenium/Python,但我不能使用 send_keys 方法。你有什么其他想法我该怎么做? 我附上了带有 HTML 的屏幕截图和来自应用程序的屏幕截图

我尝试使用该代码,但不起作用:

body = driver.find_element_by_xpath('//*[@id="oss-view-wrapper"]/main/div/div/div[2]/div/div[2]/div[1]/div/div/div[2]/div/div/div[2]/div/div[2]/div[2]/div/div/div/div[2]/div/div/div/div/div/div[6]/div[1]/div/div/div/div[5]/div/pre/span')
body.send_keys("TEST")

【问题讨论】:

  • 请先显示一些代码。还有你正在抓取的页面的链接。
  • 试试这个 xpath 并告诉我//div[@class='CodeMirror-code']/div/pre/span[@role='presentation']
  • 呃……你期待发生什么?我认为您不能将文本输入到“跨度”元素中。您需要一个 textarea 或 input 元素。所以,除非这里涉及到一些特殊的 Javascript 来处理对该元素的文本输入,否则我不相信 send_keys() 会做任何事情。您收到错误消息了吗?

标签: python selenium key send


【解决方案1】:

您可以使用 javasecriptExceutor,请立即检查代码,我对 Python 没有深入了解:

element = driver.find_element_by_xpath('Your xpath')
driver.execute_script("arguments[0].innerText = 'test'", element)

【讨论】:

  • 我面临着类似的情况。我正在开发一个脚本来自动化我需要输入定价相关信息的工具。代码是
    。我可以使用 javascript 单击此元素,但无法输入文本。我已经尝试过上述方式,但脚本正在输入文本并立即显示文本。可以的话请帮忙
猜你喜欢
  • 2011-09-23
  • 1970-01-01
  • 1970-01-01
  • 2023-04-06
  • 1970-01-01
  • 2018-03-22
  • 1970-01-01
  • 2021-09-24
相关资源
最近更新 更多