Skip to content

Commit 125260f

Browse files
WillowSauceRWillowSauceR
authored andcommitted
fomat code
1 parent b1e47df commit 125260f

File tree

1 file changed

+33
-30
lines changed

1 file changed

+33
-30
lines changed

scan.py

Lines changed: 33 additions & 30 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,12 @@
1-
from multiprocessing.connection import _ConnectionBase
21
import socket
32
import sys
43
import threading
54
import time
65
import os
76
import re
8-
from random import randint
97
import multiprocessing as mp
10-
from webbrowser import get
8+
from random import randint
9+
from multiprocessing.connection import _ConnectionBase
1110

1211
from api import getLocalHostIP, getTime, log
1312

@@ -17,26 +16,8 @@
1716
socketSendRecv = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
1817
socketSendRecv.bind((localHostIP, localHostPort))
1918

20-
scanResult = {"serverCount": 0, "bdsCount": 0, "nkCount": 0, "geyserCount": 0, "skipped": 0, "error": 0, "serverList": [], "totalPlayerCount": 0}
21-
22-
try:
23-
TargetAddr = sys.argv[1]
24-
portRange = sys.argv[2]
25-
verboseMode = sys.argv[3]
26-
except:
27-
TargetAddr = input("Target IP: ")
28-
portRange = input("Port range(like 1145-1919 and all): ")
29-
verboseMode = input("Show verbose info(y/n): ")
30-
31-
try:
32-
timeout = int(sys.argv[4])
33-
except:
34-
timeout = 0
35-
36-
try:
37-
fileName = str(sys.argv[5])
38-
except:
39-
fileName = ""
19+
scanResult = {"serverCount": 0, "bdsCount": 0, "nkCount": 0, "geyserCount": 0,
20+
"skipped": 0, "error": 0, "serverList": [], "totalPlayerCount": 0}
4021

4122
motdData = b'\x01\x00\x00\x00\x00$\r\x12\xd3\x00\xff\xff\x00\xfe\xfe\xfe\xfe\xfd\xfd\xfd\xfd\x124Vx\n'
4223

@@ -114,7 +95,9 @@ def startThreads():
11495
t1.join()
11596
# while threading.enumerate().__len__() != 2: # main and itself
11697
# time.sleep(1)
117-
98+
# while mp.active_children():
99+
# time.sleep(1)
100+
# mp.active_children()[0].terminate()
118101
log(f"BE Server Count: {scanResult['serverCount']}", info="I")
119102
log(f"BDS Count: {scanResult['bdsCount']}", info="I")
120103
log(f"NK Count: {scanResult['nkCount']}", info="I")
@@ -190,22 +173,42 @@ def recvPackets(socketSendRecv: socket.socket, verboseMode: str, fileName: str,
190173
elif re.search(b"eyser", data):
191174
scanResult['geyserCount'] += 1
192175
# socketSendRecv.close()
193-
pipe.send(scanResult)
194176
except OSError as errorInfo:
195177
if verboseMode == "y":
196178
log(f"{errorInfo}, skipped.", info="R")
197179
scanResult['error'] += 1
198180
except Exception as errorInfo:
199181
log(f"{errorInfo}, skipped.", info="R")
200182
scanResult['error'] += 1
201-
pass
183+
finally:
184+
pipe.send(scanResult)
202185

203186

204187
if __name__ == "__main__":
205-
t = threading.Thread(target=startThreads, daemon=True)
206-
t.start()
188+
try:
189+
TargetAddr = sys.argv[1]
190+
portRange = sys.argv[2]
191+
verboseMode = sys.argv[3]
192+
except:
193+
TargetAddr = input("Target IP: ")
194+
portRange = input("Port range(like 1145-1919 and all): ")
195+
verboseMode = input("Show verbose info(y/n): ")
196+
197+
try:
198+
timeout = int(sys.argv[4])
199+
except:
200+
timeout = 0
201+
202+
try:
203+
fileName = str(sys.argv[5])
204+
except:
205+
fileName = ""
206+
207207
pipe1, pipe2 = mp.Pipe()
208-
p = mp.Process(target=recvPackets, args=(socketSendRecv, verboseMode, fileName, scanResult, pipe2), daemon=True)
208+
p = mp.Process(target=recvPackets, args=(
209+
socketSendRecv, verboseMode, fileName, scanResult, pipe2), daemon=True)
209210
p.start()
211+
t = threading.Thread(target=startThreads, daemon=True)
212+
t.start()
210213
while mp.active_children():
211-
scanResult = pipe2.recv()
214+
scanResult = pipe1.recv()

0 commit comments

Comments
 (0)