Многопоточность Python PyQt5
Не получается организовать многопоточность в двух функциях с подвязкой PyQt5
def Scanner(self) -> object:
mas = [20, 21, 22, 23, 25, 42, 43, 53, 67, 69, 80, 110, 115, 123, 137, 138, 139, 143, 161, 179, 443, 445,514, 515, 993, 995]
host = self.lineEdit_2.text()
try:
ipaddress.ip_network(host)
for port in mas:
s = socket.socket()
s.settimeout(1)
try:
s.connect((host, port))
per2 = (str(port) + ' port open!')
self.textEdit_5.setText(per2)
print(per2)
except socket.error:
per3 = (str(port) + ' port locked!')
self.textEdit_5.append(per3)
except ValueError:
QMessageBox.warning(self, 'Error!', 'Invalid IP!')
theardforce = threading.Thread(target=Scanner(self),name = "Scanner")
theardforce.start()
theardforce.join()
def list(self, request=None):
per1 = self.lineEdit_3.text()
try:
ipaddress.ip_network(per1)
url = 'http://www.ip-score.com/ajax_handler/get_bls'
blacklist = [
'access.redhawk.org', 'b.barracudacentral.org', 'bl.shlink.org', 'bl.spamcannibal.org',
'bl.spamcop.net', 'bl.tiopan.com', 'blackholes.wirehub.net', 'blacklist.sci.kun.nl',
'block.dnsbl.sorbs.net', 'blocked.hilli.dk', 'bogons.cymru.com', 'cart00ney.surriel.com',
'cbl.abuseat.org', 'cblless.anti-spam.org.cn', 'dev.null.dk', 'dialup.blacklist.jippg.org',
'dialups.mail-abuse.org', 'dialups.visi.com', 'dnsbl.abuse.ch', 'dnsbl.anticaptcha.net',
'dnsbl.antispam.or.id', 'dnsbl.dronebl.org', 'dnsbl.justspam.org', 'dnsbl.kempt.net',
'dnsbl.sorbs.net', 'dnsbl.tornevall.org', 'dnsbl-1.uceprotect.net', 'duinv.aupads.org',
'dnsbl-2.uceprotect.net', 'dnsbl-3.uceprotect.net', 'dul.dnsbl.sorbs.net', 'dul.ru',
'escalations.dnsbl.sorbs.net', 'hil.habeas.com', 'black.junkemailfilter.com',
'http.dnsbl.sorbs.net', 'intruders.docs.uu.se', 'ips.backscatterer.org',
'korea.services.net', 'l2.apews.org', 'mail-abuse.blacklist.jippg.org',
'misc.dnsbl.sorbs.net', 'msgid.bl.gweep.ca', 'new.dnsbl.sorbs.net',
'no-more-funn.moensted.dk', 'old.dnsbl.sorbs.net', 'opm.tornevall.org', 'pbl.spamhaus.org',
'proxy.bl.gweep.ca', 'psbl.surriel.com', 'pss.spambusters.org.ar', 'rbl.schulte.org',
'rbl.snark.net', 'recent.dnsbl.sorbs.net', 'relays.bl.gweep.ca', 'relays.bl.kundenserver.de',
'relays.mail-abuse.org', 'relays.nether.net', 'rsbl.aupads.org', 'sbl.spamhaus.org',
'smtp.dnsbl.sorbs.net', 'socks.dnsbl.sorbs.net', 'spam.dnsbl.sorbs.net', 'spam.olsentech.net',
'spamguard.leadmon.net', 'spamsources.fabel.dk', 'tor.dnsbl.sectoor.de', 'ubl.unsubscore.com',
'web.dnsbl.sorbs.net', 'xbl.spamhaus.org', 'zen.spamhaus.org', 'zombie.dnsbl.sorbs.net',
'dnsbl.inps.de', 'dyn.shlink.org', 'rbl.megarbl.net', 'bl.mailspike.net']
for server in blacklist:
try:
data = {'ip': per1, 'server': server}
response = requests.post(url, data=data, timeout=3)
if response.status_code != 200:
raise ValueError('Expected 200 OK')
data = response.json()
rating = data[data.keys()[0]]
if rating != "":
self.textEdit_4.setText(server + "LISTED " + rating)
except:
self.textEdit_4.append("NOT LISTED: " + server)
except ValueError:
QMessageBox.warning(self, 'Error!', 'Invalid IP!')
theardforce1 = threading.Thread(target=list(self),name = "list")
theardforce1.start()
theardforce1.join(