我是新来硒,我将文件上载到服务器的脚本。
在IDE版本那种说话吧上传文件,但是当我出口测试情况下,蟒蛇2 /单元测试/ webdriver的不上传..
它不给我任何错误,只是没有把它上传...
该Python脚本是:
driver.find_element_by_id("start-upload-button-single").click()
driver.find_element_by_css_selector("input[type=\"file\"]").clear()
driver.find_element_by_css_selector("input[type=\"file\"]").send_keys("C:\\\\Documents and Settings\\\\pcname\\\\Desktop\\\\ffdlt\\\\test.jpeg")
我搜索的解决方案,但我还没有发现任何除非AutoIt的或AutoHotkey的整合它...
第一行打开文件的Firefox上传框。
您的代码工作完美的我(我用Firefox测试,Chrome的驱动程序)
有一件事我supect过度反斜线( \
)逃逸。
尝试以下操作:
driver.find_element_by_id("start-upload-button-single").click()
driver.find_element_by_css_selector('input[type="file"]').clear()
driver.find_element_by_css_selector('input[type="file"]').send_keys("C:\\Documents and Settings\\pcname\\Desktop\\ffdlt\\test.jpeg")
要么
driver.find_element_by_id("start-upload-button-single").click()
driver.find_element_by_css_selector('input[type="file"]').clear()
driver.find_element_by_css_selector('input[type="file"]').send_keys(r"C:\Documents and Settings\pcname\Desktop\ffdlt\test.jpeg")
你有没有试过这种单一的代码:
driver.find_element_by_css_selector("input[type=\"file\"]").send_keys("C:\\Documents and Settings\\pcname\\Desktop\\ffdlt\\test.jpeg")
如果我运行从它工作得很好的IDE以下行,它上传文件。
Command | Target | Value
_____________________________________________________________
open | /upload |
click | id=start-upload-button-single |
type | css=input[type="file"] | C:\\Documents and Settings\\cristian\\Desktop\\ffdl\\MyWork.avi
但是,当我将其导出为Python的webdriver它只是不上传,我已经尝试了一切。
最后的办法是让它在AutoHotkey工作,但我希望它的工作。
我所做的测试,我发现用/在其他网站,看看问题是否只在我试图让上传(YouTube)的网站的解决方案,这些解决方案的工作(EX: HTTP://开发.sencha.com /部署/ EXT-4.0.0 /例子/表格/文件upload.html )它们是有效的,你可以将文件上传到大多数服务器,它只是不进行这项工作。
谢谢您的帮助。
这对我的作品:
# Upload file
elem = driver.find_element_by_name("File")
elem.send_keys(r"D:\test\testfile04.txt")
elem = driver.find_element_by_partial_link_text("Upload File")
elem.click()