【问题标题】:Check Drag and Drop Functionality of a Web Application检查 Web 应用程序的拖放功能
【发布时间】:2021-10-24 21:04:10
【问题描述】:

我正在尝试实现一个工具来检查网站是否具有拖放文件上传功能。具体来说,如果this这样的网站有拖放文件上传功能,我的工具需要返回True。

我在 Python code 中找到了这段代码,它利用 Selenium 通过拖放将文件从本地文件系统上传到网站。它需要拖放区域的element_id 和文件的路径。

我更新了这段代码来构建我的工具。具体来说,我的代码首先检索网站的所有元素并检查文件是否可放置返回True。但是,即使赋予函数的某些“id”不可删除,它仍会返回 True。仅当给定的“id”将文件上传到网络服务器时,我才希望返回 True。

ids = driver.find_elements_by_xpath('//*[@id]')
for ii in ids:
    all_ids.append(ii.get_attribute('id'))
    #print(ii.get_attribute('id'))    # id name as string
    try:
        dropzone = driver.find_element_by_id(ii.get_attribute('id'))
        dropzone.drop_files("/Users/pythonSelenium/test.png")
        return True

    except: 
        continue

我该如何解决这个问题?

【问题讨论】:

    标签: python selenium selenium-webdriver


    【解决方案1】:

    您可以使用布尔值,仅当元素被删除时才设置为 true,否则返回 false。

    ids = driver.find_elements_by_xpath('//*[@id]')
    for ii in ids:
        all_ids.append(ii.get_attribute('id'))
        #print(ii.get_attribute('id'))    # id name as string
        dropped = False
        try:
            dropzone = driver.find_element_by_id(ii.get_attribute('id'))
            dropzone.drop_files("/Users/pythonSelenium/test.png")
            dropped = True
        except: 
            continue
    return dropped
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-09-21
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多