2013-08-07 108 views
0

我必須在登錄到網站後將文件上傳到網站,並執行幾個需要自動執行的命令。以下是網站的詳細步驟。如何使用shell/java將文件上傳到網站

  1. www.example.com> ..
  2. 輸入用戶名,密碼..
  3. 點擊 '上傳' 按鈕..
  4. 等待5分鐘/直到出現處理文件..
  5. 下載處理文件。

那麼,請幫助我的例子。如何用JAVA/Shell /任何其他腳本執行上述任務。

+0

你能告訴我們一些你已經嘗試過的東西,並解釋它爲什麼不起作用嗎?請參閱[on-topic](http://stackoverflow.com/help/on-topic)上的內容。 – mthmulders

+0

如果你想在Java中做到這一點,URLConnection是一個很好的起點(http://docs.oracle.com/javase/6/docs/api/java/net/URLConnection.html)。 –

+0

以前我使用的是由某人開發的Jmeter,它停止工作。所以,我想找到另一種方式來做到這一點。順便說一句,現在我正在爲大約20個文件手動完成所有這些工作。因爲,我是一個新手,我沒有Idea來自動化這個。這就是爲什麼要求一個可能幫助我做到這一點的相關示例。 –

回答

0

你或許可以使用pyton腳本相同,如下所示: 下面的腳本由我寫的登錄到其使用cookies以及Facebook的 進口http.cookiejar 進口的urllib

url = 'https://site.com/login.php' 
values = {'email' : '[email protected]', 
    'pass' : 'mypassword' } 

data = urllib.parse.urlencode(values) 
cookies = http.cookiejar.CookieJar() 

opener = urllib.request.build_opener(
urllib.request.HTTPRedirectHandler(), 
urllib.request.HTTPHandler(debuglevel=0), 
urllib.request.HTTPSHandler(debuglevel=0), 
urllib.request.HTTPCookieProcessor(cookies)) 

binary_data = data.encode('ascii') 
response = opener.open(url, binary_data) 
the_page = response.read() 
http_headers = response.info() 

這裏電子郵件和通行證是您可以從網站獲得的輸入。

注意:並非所有的網站都允許你這樣登錄。

現在請參閱python docs上傳/下載。其中之一是http://webpython.codepoint.net/cgi_file_upload