@wikicasa-dev/node-common 2.3.1 → 2.5.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/src/CallPool.d.ts +2 -0
- package/dist/src/CallPool.js +29 -50
- package/dist/src/CallPool.js.map +1 -1
- package/package.json +1 -1
package/dist/src/CallPool.d.ts
CHANGED
|
@@ -23,6 +23,8 @@ export declare class CallPool {
|
|
|
23
23
|
private completedCalls;
|
|
24
24
|
private readonly MINUTE_IN_MS;
|
|
25
25
|
constructor(name: string, proxy: PROXY, minConcurrency: number, maxConcurrency: number, limitCall?: number, limitInterval?: number);
|
|
26
|
+
private buildAxiosConfig;
|
|
27
|
+
directCall(url: string, config?: AxiosRequestConfig): Promise<AxiosResponse>;
|
|
26
28
|
call(url: string, config?: AxiosRequestConfig): Promise<AxiosResponse>;
|
|
27
29
|
private getRandomUserAgent;
|
|
28
30
|
enqueue(call: () => Promise<any>): Promise<any>;
|
package/dist/src/CallPool.js
CHANGED
|
@@ -6,20 +6,19 @@ import { sleep } from "./common.js";
|
|
|
6
6
|
import CacheableLookup from "cacheable-lookup";
|
|
7
7
|
import Agent from "agentkeepalive";
|
|
8
8
|
import * as RandomUserAgent from "random-useragent";
|
|
9
|
-
import axiosRetry from "axios-retry";
|
|
10
9
|
import _ from "lodash";
|
|
11
10
|
import { HttpsProxyAgent } from "https-proxy-agent";
|
|
12
11
|
const cacheable = new CacheableLookup();
|
|
13
12
|
// Increase the limit
|
|
14
13
|
EventEmitter.defaultMaxListeners = 20;
|
|
15
14
|
//const a = new CallPool("test", 1, 10, 50, 1000, PROXY.DYNAMIC);
|
|
16
|
-
axiosRetry(axios, {
|
|
15
|
+
/*axiosRetry(axios, {
|
|
17
16
|
retries: 1,
|
|
18
17
|
retryDelay: (retryCount, error) => {
|
|
19
18
|
Console.log(`retry attempt: ${retryCount}. Error ${error}`);
|
|
20
19
|
return retryCount * 1000;
|
|
21
20
|
},
|
|
22
|
-
})
|
|
21
|
+
});*/
|
|
23
22
|
export var PROXY;
|
|
24
23
|
(function (PROXY) {
|
|
25
24
|
PROXY[PROXY["NONE"] = 0] = "NONE";
|
|
@@ -75,57 +74,37 @@ export class CallPool {
|
|
|
75
74
|
}
|
|
76
75
|
})*/
|
|
77
76
|
}
|
|
77
|
+
buildAxiosConfig(config) {
|
|
78
|
+
return _.merge({
|
|
79
|
+
method: "GET",
|
|
80
|
+
proxy: this.proxy === PROXY.DYNAMIC ? {
|
|
81
|
+
protocol: "http",
|
|
82
|
+
host: "api.zyte.com",
|
|
83
|
+
port: 8011,
|
|
84
|
+
auth: {
|
|
85
|
+
username: "cf3dd14c1b9c4daf9cf67007520d0c48",
|
|
86
|
+
password: ""
|
|
87
|
+
},
|
|
88
|
+
} : undefined,
|
|
89
|
+
httpsAgent: this.proxy === PROXY.STATIC ? new HttpsProxyAgent("http://wikicasa:VTt7KYb5fsqDhK6xXinS@162.19.104.35:3128") : undefined,
|
|
90
|
+
httpAgent: this.proxy === PROXY.STATIC ? new HttpsProxyAgent("http://wikicasa:VTt7KYb5fsqDhK6xXinS@162.19.104.35:3128") : undefined,
|
|
91
|
+
maxContentLength: Infinity,
|
|
92
|
+
maxBodyLength: Infinity,
|
|
93
|
+
timeout: 600000,
|
|
94
|
+
headers: {
|
|
95
|
+
...(this.proxy === PROXY.DYNAMIC && { "Zyte-Geolocation": "IT" }),
|
|
96
|
+
"User-Agent": this.proxy !== PROXY.NONE ? this.getRandomUserAgent() : undefined,
|
|
97
|
+
}
|
|
98
|
+
}, config);
|
|
99
|
+
}
|
|
100
|
+
async directCall(url, config) {
|
|
101
|
+
return axios(url, this.buildAxiosConfig(config));
|
|
102
|
+
}
|
|
78
103
|
call(url, config) {
|
|
79
104
|
return new Promise((resolve, reject) => {
|
|
80
105
|
this.queue.push({
|
|
81
106
|
call: async () => {
|
|
82
|
-
|
|
83
|
-
...config,
|
|
84
|
-
agent: this.agent,
|
|
85
|
-
headers: {
|
|
86
|
-
...config?.headers,
|
|
87
|
-
"User-Agent": this.proxy !== PROXY.NONE ? RandomUserAgent.getRandom() : undefined
|
|
88
|
-
}
|
|
89
|
-
});
|
|
90
|
-
|
|
91
|
-
// Andrea M: handle 400-500 errors
|
|
92
|
-
if (!response.ok)
|
|
93
|
-
throw response;*/
|
|
94
|
-
/*httpAgent: new Agent({
|
|
95
|
-
keepAlive: false,
|
|
96
|
-
maxSockets: 100,
|
|
97
|
-
maxFreeSockets: 10,
|
|
98
|
-
timeout: 60000,
|
|
99
|
-
lookup: cacheable.lookupAsync,
|
|
100
|
-
}),
|
|
101
|
-
httpsAgent: new Agent({
|
|
102
|
-
keepAlive: false,
|
|
103
|
-
maxSockets: 100,
|
|
104
|
-
maxFreeSockets: 10,
|
|
105
|
-
timeout: 60000,
|
|
106
|
-
lookup: cacheable.lookupAsync,
|
|
107
|
-
}),*/
|
|
108
|
-
return axios(url, _.merge({
|
|
109
|
-
method: "GET",
|
|
110
|
-
proxy: this.proxy === PROXY.DYNAMIC ? {
|
|
111
|
-
protocol: "http",
|
|
112
|
-
host: "api.zyte.com",
|
|
113
|
-
port: 8011,
|
|
114
|
-
auth: {
|
|
115
|
-
username: "cf3dd14c1b9c4daf9cf67007520d0c48",
|
|
116
|
-
password: ""
|
|
117
|
-
},
|
|
118
|
-
} : undefined,
|
|
119
|
-
httpsAgent: this.proxy === PROXY.STATIC ? new HttpsProxyAgent("http://wikicasa:VTt7KYb5fsqDhK6xXinS@162.19.104.35:3128") : undefined,
|
|
120
|
-
httpAgent: this.proxy === PROXY.STATIC ? new HttpsProxyAgent("http://wikicasa:VTt7KYb5fsqDhK6xXinS@162.19.104.35:3128") : undefined,
|
|
121
|
-
maxContentLength: Infinity,
|
|
122
|
-
maxBodyLength: Infinity,
|
|
123
|
-
timeout: 600000,
|
|
124
|
-
headers: {
|
|
125
|
-
...(this.proxy === PROXY.DYNAMIC && { "Zyte-Geolocation": "IT" }),
|
|
126
|
-
"User-Agent": this.proxy !== PROXY.NONE ? this.getRandomUserAgent() : undefined,
|
|
127
|
-
}
|
|
128
|
-
}, config));
|
|
107
|
+
return axios(url, this.buildAxiosConfig(config));
|
|
129
108
|
},
|
|
130
109
|
resolve,
|
|
131
110
|
reject
|
package/dist/src/CallPool.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CallPool.js","sourceRoot":"","sources":["../../src/CallPool.ts"],"names":[],"mappings":"AAAA,OAAO,cAAc,MAAM,iBAAiB,CAAC;AAC7C,OAAO,EAAC,OAAO,EAAE,MAAM,EAAC,MAAM,cAAc,CAAC;AAE7C,OAAO,EAAC,YAAY,EAAC,MAAM,QAAQ,CAAC;AACpC,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,EAAC,KAAK,EAAC,MAAM,aAAa,CAAC;AAClC,OAAO,eAAe,MAAM,kBAAkB,CAAC;AAE/C,OAAO,KAAK,MAAM,gBAAgB,CAAC;AACnC,OAAO,KAAK,eAAe,MAAM,kBAAkB,CAAC;
|
|
1
|
+
{"version":3,"file":"CallPool.js","sourceRoot":"","sources":["../../src/CallPool.ts"],"names":[],"mappings":"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"}
|