簡體   English   中英

如何在python中將文件屬性添加到Web中的硒

[英]How to add files property to webelement in selenium in python

我有硒web元素:
input_elem = driver.find_element_by_class_name("inline_upload")
我想添加文件。 然后在執行js腳本中使用它
driver.execute_script("func(input_elem);")
func使用此文件的位置:

func: function(e) {
    a = e.files[0]
    b = attr(e, "some_attr)
}

因此,我必須將files屬性添加到我的硒webelement中,然后使用文件(二進制?)來初始化此屬性,或者使用硒來初始化新的Input FileUpload對象

我該怎么做?

此示例注入事件偵聽器以允許與上傳的文件進行交互:

from selenium import webdriver
driver = webdriver.Firefox()
driver.get("http://fiddle.jshell.net/lovlka/N4Jxk/show/")
driver.switch_to_frame(0)

# find the input
input_elem = driver.find_element_by_css_selector("#uploadFile")

# add an event listener on the input element
driver.execute_script("""\
  arguments[0].addEventListener("change", function onchange() {
    this.removeEventListener("change", onchange);
    var files = this.files;

    alert('a file was uploaded');
  });
  """, input_elem)

# upload the file
input_elem.send_keys(r"C:\text.txt")

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM