我必须自动化一个Web应用程序,它包含一个用于从本地文件系统上传文件的拖放区域。我的测试环境是使用Python开发的。对于自动化测试,我使用了Selenium,但是一旦上传区域是一个div标签(没有input标签--我知道这样会很容易),就不可能从文件系统中拖动文件。
我读了很多不同的文章,但到目前为止没有一篇适合我,需要强调的是,我对使用AutoIT不感兴趣,我只对使用selenium的原生python感兴趣。
我发现了 selenium :从文件系统拖放到webdriver?什么看起来真的很有前途,但我不知道适应Python。
先谢谢你了!
2条答案
按热度按时间t1qtbnec1#
下面是这个技巧的python版本,通过脚本进行输入注入。
当
drop_target
传递给它一些在页面上可见的元素时,你可以使用driver.get_element_by_...
家族中的任何函数来获取这些元素。方法是使用selenium的
execute_script
函数调用javascript来模拟拖放事件。dragenter
、dragover
、drop
。tzdcorbm2#
我知道这可能是一个迟来的答案,但以防万一的人谁找到答案!
如果您使用的是Chrome,请go to this site下载Chrome驱动程序。(尝试找到您的Chrome版本thru this并选择合适的版本)
你还需要做一件事我现在就给你看
首先:下载chrome驱动程序并复制Xpath
步骤1:转到您想要的网站,并复制您的“拖放”的完整XPath,右键单击拖放区域,然后点击检查。
请这样做两次,以防它检查对地方
第2步:您将看到突出显示的颜色,再次右键单击它们
然后你会发现“复制”-〉“复制完整的Xpath”
最后,让我们编写代码
等等!!!还有一个建议:如果您看到粘贴“Xpath”或“link to the folder”时出现问题for example
您可以使用“”代替““