Я хочу сканировать порты, используя библиотеку python -nmap. Я хочу сканировать порты определенного набора портов два раза, используя многопроцессорную обработку для вызова функции, которая затем получает открытые порты и сохраняет их в списке. Теперь я хочу сравнить найденные порты разными процессами.
import nmap
import sys
import multiprocessing</p>
<pre><code>def scan():
nm=nmap.PortScanner()
nm.scan(hosts=sys.argv[1],arguments='-T4',ports='1-1000')
popen=nm[sys.argv[1]]['tcp'].keys()
popen.sort()
for port in popen:
state=nm[sys.argv[1]]['tcp'][int(port)]['state']
print "port :"+str(port)+":" +state
def main():
process1=multiprocessing.Process(target=scan)
process2=multiprocessing.Process(target=scan)
process1.start()
process2.start()
process1.join()
process2.join()
####if(process1.popen==process2.popen) This is not valid.####How to do this
# print "yes"
if __name__=='__main__':
main()
Здесь я хочу сравнить переменную popen для process1 и process2.