ファイルのアップロード   14.54版以降

いろいろな方法で、ZIP/MP3ファイルをアップロードしてみます。

ウェブページからアップロード




ウェブページからアップロード

ここでは、無料のウィルスチェックサイト「VirusTotal」を利用させていただき、ファイルをアップロードします。
下記がそのページ。
ファイル入力フィールドにファイルパスを入力できれば簡単なのですが、セキュリティの関係で、「file」属性のフィールドは読み取り専用、かつ、プログラムでも入力できないようになっています。
よって、人が操作するのと同じ手順をプログラムで行うことにします。
プログラム26行目までは、ファイルのダウンロード処理
マウスレコーダーのダウンロードページからアーカイブファイル「mrecorder.zip」をダウンロードします。
このファイルを「VirusTotal」ページにアップロードします。
ウェブページからのダウンロードについては、下記のページを参考にしてください。
  ダウンロードファイルをウェブページから検索

1.フィールドにフォーカス

 IEFocusコマンドでファイルパス入力フィールドにフォーカスを当てます。
(=アクティブにする)

2.タブを押す

 一回タブを押すと「ファイル選択」ボタンにフォーカスが移ります。

 ボタン押下
 ENTERキーを押すと、「アップロードするファイルの選択」ダイアログボックスが開きます。

3.ファイルパスを入力

 絶対パスでファイルパスを入力します。

4.「開く」ボタンに移動
 ショートカットキー(ALT+O)で「開く」ボタンにフォーカスを移動します。

 ENTERキーを押下

5.「スキャンする」ボタンを押下

 「スキャンする」ボタンに自動的にフォーカスが移るので、そのままENTERキーを押すだけで良いのですが、ここでは、IDから検索し、ポイント後にENTERキーを押しています。
(自動的にフォーカスが移らないページがある場合の対応)

以上でファイルのアップロードが開始されます。

 

その後の流れは、右図。

既にチェック済みなので、右図のようなメッセージが表示されます。
 


001       INIT                                  8 390 598 734  0,0,1,600000,0,MyData   
002 ! ダウンロード&アップロード                              
003 !                                                          
004 ! マウスレコーダーのアーカイブファイルをダウンロードして                
005 ! ウィルスチェックを行います                              
006 !                                                          
007 ! チェックサイトは、VirusTotal                  
008 !                                                          
009 ! 変数定義と初期値                                        
010 !                                                          
011       Set              // ダウンロード先URL          Down_Url ../../../../../web_dl/petit_tool/mrecorder/frame/default.html   
012       Set              // ダウンロードファイル名          FileName mrecorder.zip   
013       Set              // 保存先ファイルパス          Down_File %Desktop%\%FileName%   
014 !                                                          
015       Set              // アップロード先URL          Up_Url https://www.virustotal.com/ja/   
016       Set              // ファイルパス入力フィールド          Up_ID file-choosen   
017 !                                                          
018 ! ダウンロード                                            
019 !                                                          
020       IENavigate       // マウスレコーダーのページを開く      0 0 900 700 %Down_Url%    
021       IEPoint          // 「ダウンロード」をポイント          ダウンロード 表示文字   
022       IEDownload       // ダウンロード             %Down_File%   
023       MSG_BOX          // ウィルスチェック開始確認          4 ダウンロード完了 保存先:  %Down_File% 続けて VirusTotal にてウィルスチェックを行いますか?   
024       If               // いいえ  %MsgBox% = 7             
025         QUIT           //  終了                           
026       End-If                                               
027 !                                                          
028 ! アップロード                                            
029 !                                                          
030       IENavigate       // アップロード先ページを開く      0 0 900 700 %Up_Url%    
031       IEFocus          // ファイル入力フィールドにフォーカス          %Up_ID% Id(name)   
032       Tab              // ファイル選択                     
033       Space            // ボタンを押す                     
034       Wait             // ダイアログが開き切るまで待つ 1000             
035       文章入力         // ファイルパス入力          一括 %Down_File%   
036       Wait             // 入力処理完了待ち 500             
037       Alt+O            // 「開く」                         
038       IEFocus          // 「スキャンする」 500         btn-scan-file Id(name)   
039       Enter            // ENTER                       


034,36行目で時間待ちをしています。 これは、ダイアログが完全に開き切るのと、入力処理が完了するのを待つためです。
あまり感心できる処理ではありませんが、処理が空振りする場合は、待ちを少し長く(1秒=1000ほど)してみて下さい。



コードの使用方法