-
Notifications
You must be signed in to change notification settings - Fork 0
/
GetNextProxy.bsl
30 lines (23 loc) · 831 Bytes
/
GetNextProxy.bsl
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
Function GetNextProxy()
ServerName = "https://www.proxy-list.download";
URL = "api/v1/get?type=https&anon=transparent&country=NL";
HTTPRequest = New HTTPRequest(URL);
Connection = New HTTPConnection(ServerName);
Res = Connection.Get(HTTPRequest);
ResStr = Res.GetBodyAsString();
StringsArray = New Array();
LineCount = StrLineCount(ResStr);
if LineCount <= UsedProxiesCount Then
Return Undefined;
EndIf;
For StrNum = 1 To LineCount Do
Str = StrReplace(StrGetLine(ResStr, StrNum), Chars.CR, "");
StringsArray.Add(StrSplit(Str, ":"));
EndDo;
ProxyIP = StringsArray[UsedProxiesCount][0];
ProxyPort = Number(StringsArray[UsedProxiesCount][1]);
Proxy = New InternetProxy(False);
Proxy.Set("https", ProxyIP, ProxyPort, "", "", False);
UsedProxiesCount = UsedProxiesCount + 1;
Return Proxy;
EndFunction