Browse Source

CF don't like us if we go to fast. Let's add some delays.

Godzil 4 years ago
parent
commit
d692199d07
3 changed files with 9 additions and 4 deletions
  1. 2 1
      src/batch.ts
  2. 1 0
      src/interface/IConfig.d.ts
  3. 6 3
      src/series.ts

+ 2 - 1
src/batch.ts

@@ -170,7 +170,7 @@ export default function(args: string[], done: (err?: Error) => void)
         {
           i += 1;
         }
-        next();
+        setTimeout(next, config.sleepTime);
       });
     })();
   });
@@ -405,5 +405,6 @@ function parse(args: string[]): IConfigLine
     .option('--debug', 'Create a debug file. Use only if requested!')
     .option('--rebuildcrp', 'Rebuild the crpersistant file.')
     .option('--retry <i>', 'Number or time to retry fetching an episode.', '5')
+    .option('--sleepTime <i>', 'Minimum wait time between each http requests.')
     .parse(args);
 }

+ 1 - 0
src/interface/IConfig.d.ts

@@ -24,6 +24,7 @@ interface IConfig {
   debug?: boolean;
   unlog?: boolean;
   retry?: number;
+  sleepTime?: number;
   // Login options
   userAgent?: string;
   logUsingApi?: boolean;

+ 6 - 3
src/series.ts

@@ -106,7 +106,8 @@ export default function(config: IConfig, task: IConfigTask, done: (err: any) =>
                            '" - Retry ' + page.episodes[i].retry + ' / ' + config.retry);
               page.episodes[i].retry -= 1;
             }
-            next();
+            setTimeout(next, config.sleepTime);
+            return;
           }
           else
           {
@@ -121,13 +122,15 @@ export default function(config: IConfig, task: IConfigTask, done: (err: any) =>
                 }
 
                 i += 1;
-                next();
+                setTimeout(next, config.sleepTime);
+                return;
               });
             }
             else
             {
               i += 1;
-              next();
+              setTimeout(next, config.sleepTime);
+              return;
             }
           }
         });