我如何 select 元素中的文本,将其复制然后粘贴到页面的其他位置? Selenium 网络驱动程序 python;

How can I select the text within an element, copy it and then paste it elsewhere on the page? Selenium webdriver python;

[编辑图片][1]

[Link 到网站][2]

[图 1][3]

[图 2][4]

所以这是一个客户post提问寻求答案的论坛。问题是由第一个 poster 的客户提出的。我想要做的是找到第一个 poster 的名字文本,在本例中是用户“davidbrigden”,然后复制他们的名字。接下来,在按下回复(显示在第二个 ss 中)后,我想将我从第一个 poster 复制的名字粘贴到回复框中,让他们知道我正在专门回复他们。但是,我目前无法弄清楚如何执行此操作。帮助表示赞赏。

我选择回复选项的代码:

reply_buttons = driver.find_elements_by_xpath('//button[@title="Reply"]')
reply_buttons[0].click()

您可以像这样获取页面上所有用户的名称:

elements = driver.find_elements_by_css_selector('.PostUser-badges.badges')
names = []
for element in elements:
    names.append(element.text)

然后如果你想用“davidbrigden”的名字回复,使用

reply_field_element.send_keys(names[0])

您可以使用 css_selector:

从 post headers 中找到用户的用户名
'.PostUser .username'

所以,你可以得到所有posts用户名如下

answer_names= driver.find_elements_by_css_selector('.PostUser .username')

第一个回答的用户名是

first_answer_user_name = answer_names[0].text

重播评论文本区域元素位于css_selector

之后
`#composer textarea`

因此,您可以通过以下方式向那里发送文本:

driver.find_element_by_css_selector('#composer textarea').send_keys(first_answer_user_name)

更新:
总的来说,它看起来如下:

time.sleep(5)
answer_names= driver.find_elements_by_css_selector('.PostUser .username')
first_answer_user_name = answer_names[0].text
reply_buttons = driver.find_elements_by_xpath('//button[@title="Reply"]')
reply_buttons[0].click()
time.sleep(3)
driver.find_element_by_css_selector('#composer textarea').send_keys(first_answer_user_name)

不要忘记添加等待/延迟。
为了简化我添加了睡眠,应该使用预期的条件来代替