Javascript selenium文件上载不带<;输入类型=";文件"&燃气轮机;要素
我正在尝试使用selenium/python上传我的简历,在简历/CV附件部分下面 当我检查Attach元素时,它显示为Javascript selenium文件上载不带<;输入类型=";文件"&燃气轮机;要素,javascript,python,python-2.7,selenium,automation,Javascript,Python,Python 2.7,Selenium,Automation,我正在尝试使用selenium/python上传我的简历,在简历/CV附件部分下面 当我检查Attach元素时,它显示为 我不太熟悉HTML,所以我尝试通过xpath查找元素,使用send_keys()上传文件,但它在程序中运行,不上传任何内容。没有错误消息 driver.find_element_by_xpath('/html/body/div[1]/div/div[1]/div[3]/form/div[1]/div[10]/div/div[3]/a[1]').send_keys(info.r
我不太熟悉HTML,所以我尝试通过xpath查找元素,使用send_keys()
上传文件,但它在程序中运行,不上传任何内容。没有错误消息
driver.find_element_by_xpath('/html/body/div[1]/div/div[1]/div[3]/form/div[1]/div[10]/div/div[3]/a[1]').send_keys(info.resume)
我可以设法找到web元素并使用单击()
打开上载文件选项,但我希望能够完全上载文件
输入
type=“file”
,这看起来像是在线上传的例子,我以前使用过,效果很好 实际上有一个文件上传输入。您可以使用以下代码:
driver.find_element_by_id('file').send_keys(info.resume)
请注意,所有3个文件输入字段(简历、求职信和成绩单的非正式副本)都具有相同的id
属性“文件”
,因此您可以按索引选择每个字段:
driver.find_elements_by_id('file')[0].send_keys(info.resume)
driver.find_elements_by_id('file')[1].send_keys(info.cover_letter)
driver.find_elements_by_id('file')[2].send_keys(info.transcript)
这很有效,谢谢你!您如何知道元素id是“file”?当我检查元素时,我似乎无法在html中找到它。如果有文件上传表单,那么肯定应该有
元素。您可以执行driver。通过xpath('//input[@type=“file”]')查找元素。获取属性('outerHTML')
来检查它的外观,这样您就知道元素id='file',因为有一个上传文件的选项?不。我只知道确实有一个输入节点。属性(包括@id
)可以通过get\u属性('outerHTML')