总览
当我选择Google Form的下拉菜单时,无法执行此操作,因为无法正常操作。即使我尝试通过参考此内容进行响应,它也无法正常工作,当我对日语版本的stackOverFlow提出问题时,我收到了注释并解决了问题,因此我对过程进行了总结。
与python一起使用时就是这种情况。也许其他语言也可以做到这一点。
来源在这里。
它是在以前的帖子中使用的基类中实现的。
正常下拉操作方法
在
基类中,以下方法用于操作常规下拉。
用
它还包括屏幕绘图待机处理,异常处理等,但不包括
将检索到的元素传递到
流量为
。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 | # プルダウンを選択する 要素が表示されるまで20秒待つ さらに待ち時間が必要な場合は指定を行う def selectPullDownWaitDisplay(self,webElement,inputValue,waitTime=0): try: time.sleep(waitTime) self.wait.until(expected_conditions.element_to_be_clickable((By.XPATH,webElement))) selectList=self.driver.find_element_by_xpath(webElement) selectForm=Select(selectList) # 画面に表示されるプルダウンのテキストで選択を行う selectForm.select_by_visible_text(inputValue) except SystemError as err: self.log.error('テキスト送信失敗:'+webElement) self.log.error('例外発生 {}'.format(err)) self.getScreenShot() raise except: self.outputException(webElement) raise |
如果您使用按F12开头的开发工具进行检查,则

您可以看到它是一个这样的选择标记。
如何操作Google Form下拉菜单
正常下拉菜单选择
这次,通过以下方法操作下拉菜单。
它还包括屏幕绘图待机处理,异常处理等,但不包括
单击使用
-
此时,由于通过
find_elements_by_class_name 获取,因此可以通过屏幕上的下拉次数获取所选内容。内容仅是单击位置上的内容。
流量为
。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 | # GoogleFormの場合プルダウンが通常の方法では選択できないので def selectPullDownGoogleForm(self,buttonInfo,target,pullDownPosition): try: self.webElementClickOverlay(buttonInfo) time.sleep(3) options=self.driver.find_elements_by_class_name("exportSelectPopup") contents = options[pullDownPosition].find_elements_by_tag_name('content') [i.click() for i in contents if i.text == target] except SystemError as err: self.log.error('要素待機失敗:'+buttonInfo) self.log.error('例外発生 {0}'.format(err)) self.getScreenShot() raise except: self.outputException(buttonInfo) raise |
使用开发人员工具检查

您可以看到它被div标签包围,像这样。
用法等
我想知道,如果将它用于麻烦的地方(例如???),例如每次在Google Form上进行定期报告时,都会更方便吗?