2012-02-23 200 views
0

如何從網站自動下載XLS文件? 我的客戶端輸入登錄網站的用戶名和密碼,然後我需要逐一下載XLS文件列表並將它們保存到一個路徑中。文件鏈接在一個html表格內。 需要你的幫助球員從網站自動下載XLS文件

+0

我已經試過AN iMacros的劇本,但這個劇本不完美。 – 2012-02-27 21:42:19

回答

0

一種廉價和簡單的方法是建立在Web瀏覽器控制,並用它來登錄。現在,您對本站有憑據。然後,使用一個按鈕觸發每個XLS文件的URI,使用相同的上下文打開,然後保存到驅動器。

您實際上可以隱藏用戶的控件。

由於您似乎在控制網站,我還會考慮使用不同的方法來提供這些位,如WCF服務。

+0

謝謝,我會試一試:) – 2012-02-23 21:06:11

3

您可以通過以下方式執行此操作...瀏覽器行爲不同,但您可以啓動每個操作下載多個文件。我認爲這是您可能在瀏覽器中獲得的最佳解決方案。

您可以創建一組臨時隱藏的I幀,開始通過GET或它們的內部下載後,等待下載到啓動和清除的I幀:

<!DOCTYPE HTML> 
<html> 
<body> 
    <button id="download">Download</button> 

    <script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.4/jquery.min.js"></script> 
    <script type="text/javascript"> 

    $('#download').click(function() { 
     download('http://nogin.info/cv.doc','http://nogin.info/cv.doc'); 
    }); 

    var download = function() { 
     for(var i=0; i<arguments.length; i++) { 
     var iframe = $('<iframe style="visibility: collapse;"></iframe>'); 
     $('body').append(iframe); 
     var content = iframe[0].contentDocument; 
     var form = '<form action="' + arguments[i] + '" method="GET"></form>'; 
     content.write(form); 
     $('form', content).submit(); 
     setTimeout((function(iframe) { 
      return function() { 
      iframe.remove(); 
      } 
     })(iframe), 2000); 
     } 
    }  

    </script> 
</body> 
</html>