2017-04-05 53 views
0

我想在我的網站上自動創建列表,我在上傳圖片時遇到了很多困難。我使用Cloud9和Watir,並使用無頭Chrome瀏覽器,代碼使用Ruby編寫。出於某種原因,照片拒絕上傳。無法上傳文件使用Watir,無頭瀏覽器,Chromedriver,使用紅寶石

Click to see picture of upload area

photo = File.open("00909_8qYJaR8wTix_600x450.jpg", "a") 
path = File.expand_path(File.dirname(photo)) 
browser.file_field(:type,"file").set(path) 

輸出上終端:

[8] pry(main)> browser.file_field(:type,"file").value 
=> "" 
[9] pry(main)> path 
=> "/home/ubuntu/workspace/scraper" 
[10] pry(main)> File.exist? (path) 
=> true 

HTML 輸入類= 「文件上傳」 多重= 「多個」 類型= 「文件」 樣式=「顯示: 內聯塊;」

回答

1

不應該path變量包含實際文件的路徑嗎?從你的例子看起來它指向父目錄。溝File.dirname(photo)把它變成這樣:

photo = File.open("00909_8qYJaR8wTix_600x450.jpg", "a") 
path = File.expand_path(photo) 
browser.file_field(:type,"file").set(path) 

你應該沒問題,在我看來。

+0

非常感謝!我想我的印象是路徑代碼正在返回它,但顯然不是! – ByteMe