0

そこで、データ ソースとして .csv ファイルを使用して電話ゲームのスクリプトを作成することに手を出しました。Windows XP では、Windows 8 まで問題なく動作します。Imacros/Greasemonkey がインストールされた Firefox でこれを使用します。次に、Linux Mint 14 で試し、最新バージョンの FF とそれに付随するすべてのアプリケーションを使用してすべてをセットアップすることにしました。以下は、私たち(他の人と私、モルモットとして選ばれました)が実行するとフリーズするスクリプトです。エラーも何もありません FF がフリーズして応答しなくなり、アプリケーションを強制的に閉じる必要があります。考えられる理由についていくつかのフィードバックを得たいと思っていました。また、利用可能なものがあれば、これに対する修正についての方向性を知りたいと思っていました。

var numberOfUrls = 1591
var code = prompt("JUST CLICK OK DATA WILL OUTPUT UNDER iMacros/Downloads/extract.csv.")
while(true){
for(var i=1;i<numberOfUrls;i++){
var macro = "CODE: "
macro+= "SET !ERRORIGNORE YES"+"\n"
macro+= "SET !REPLAYSPEED fast"+"\n"
macro+= "SET !TIMEOUT_STEP 1"+"\n"
macro+= "SET !DATASOURCE ww_fresh_urls2.csv"+"\n"
macro+= "SET !DATASOURCE_COLUMNS 1" +"\n"
macro+= "SET !VAR1 "+code+"\n"
macro+= "SET !LOOP "+i+"\n"
macro+= "SET !DATASOURCE_LINE {{!LOOP}}"+"\n"
macro+= "URL GOTO={{!COL1}}"+"\n"
macro+= "WAIT SECONDS=.5"+"\n"
macro += "TAG POS=1 TYPE=DIV ATTR=CLASS:profileName EXTRACT=TXT" + "\n";
macro+= "WAIT SECONDS=.5"+"\n"
macro += "TAG POS=1 TYPE=SPAN ATTR=CLASS:codeCode EXTRACT=TXT" + "\n";
macro+= "WAIT SECONDS=.5"+"\n"
macro += "TAG POS=1 TYPE=DIV ATTR=CLASS:levelFrontTopArea EXTRACT=TXT" + "\n";
macro+= "WAIT SECONDS=.5"+"\n"
macro += "TAG POS=1 TYPE=SPAN ATTR=ID:cashCurrent EXTRACT=TXT" + "\n";
macro+= "WAIT SECONDS=.5"+"\n"
macro += "TAG POS=5 TYPE=SPAN ATTR=* EXTRACT=TXT" + "\n";
macro+= "WAIT SECONDS=.5"+"\n"
macro += "TAG POS=1 TYPE=A ATTR=TXT:home" + "\n"
macro+= "WAIT SECONDS=.5"+"\n"
macro+= "URL GOTO=http://wwar.storm8.com/setting.php?selectedTab=storm8"+"\n"
macro+= "WAIT SECONDS=.5"+"\n"
macro += "TAG POS=1 TYPE=TD FORM=ACTION:/setting.php?  formNonce=*&setTab1Badge=1&*                                                               ATTR=CLASS:usernameText EXTRACT=TXT" + "\n";
macro+= "WAIT SECONDS=.5"+"\n"
macro += "SAVEAS TYPE=EXTRACT FOLDER=* FILE=*" + "\n";
iimPlay(macro)
}
}
4

1 に答える 1

5

実行するとフリーズします。エラーも何もありません FF がフリーズして応答しなくなりました。

さて、ここにあなたの問題があります:

 while(true){

無限ループはブラウザをブロックします。あなたは本当に悪いことをしました、そして今悪いことが起こります。

何か良いことをしてください。何をしようとしているのかはわかりませんが、これがステート マシンでない限り、無限ループは発生しません。

于 2013-03-07T17:07:41.340 に答える