如何使用Selenium输入Google的共享选项卡?

2024-04-19 01:39:36 发布

您现在位置:Python中文网/ 问答频道 /正文

我正试图使用Selenium将谷歌幻灯片共享到电子邮件中,但我找不到可向其发送密钥的元素。我尝试在几个不同的元素上使用driver.find_element_by命令,但无法识别。这是我试图输入的地方的截图https://i.stack.imgur.com/AxKkK.png

我的一些尝试

sharetab=driver.find_element_by_class_name('exportFieldContainer boqDriveElementsCoreWebFormfield_baseFieldContainer boqDriveElementsCoreWebFormfield_filledFieldContainer  isAssistiveTextSuppressed isDensityCozy')
sharetab.send_keys('example@gmail.com')

sharetab=driver.find_element_by_id('id-3wipxg--j8nc63-pprkit')
sharetab.send_keys('example@gmail.com')

Tags: comsendid元素byexampledriverselenium
1条回答
网友
1楼 · 发布于 2024-04-19 01:39:36

“共享”选项卡有很多问题。因为我不知道你到底被困在哪里,我将为所有人提供解决方案

第一部分是,name条目的共享pop位于Iframe中。因此,首先,您必须转换到该位置(在获取文本框之前)

共享Iframe的css选择器是:

body > div.modal-dialog.share-client-dialog.full-screen-share-client-dialog.team-drive-share-client-dialog > div.modal-dialog-content > iframe

您应该这样使用它:

iframe = driver.find_element_by_css_selector('body > div.modal-dialog.share-client-dialog.full-screen-share-client-dialog.team-drive-share-client-dialog > div.modal-dialog-content > iframe')
driver.switch_to.frame(iframe)

现在来看另一个困难:有很多元素,但是textfield/textbox是可以发送键的元素。若要查找(在将来的情况下),请尝试在使用开发人员工具检查高亮显示的任何元素或检测到的任何更改时键入

共享选项卡中文本字段的css选择器为

#_c118

使用如下方式:

txtbox = driver.find_element_by_css_selector('#_c118')
txtbox.send_keys('lukeskywalker@rebels.org')  #You could put any text in the send keys function

希望这能解决你的问题

相关问题 更多 >