Python 故障多处理-“;参数不正确";在p.start()上

Python 故障多处理-“;参数不正确";在p.start()上,python,parameters,multiprocessing,Python,Parameters,Multiprocessing,我在多重处理方面遇到了很多麻烦——我已经尝试了好几个小时,但都做不好。这是我的代码,我已经尽力了 链接了我所有的代码,因为我不知道到底是什么导致的。 第74行写着,在第页开始() 代码中最相关的部分是问题的底部。 这是我的进口货 import urllib import socket import multiprocessing as mp import queue import requests 用于在连接到网站时获得更高成功率的标题 headers={'User-agent' : 'Moz

我在多重处理方面遇到了很多麻烦——我已经尝试了好几个小时,但都做不好。这是我的代码,我已经尽力了

链接了我所有的代码,因为我不知道到底是什么导致的。 第74行写着,在第页开始() 代码中最相关的部分是问题的底部。 这是我的进口货

import urllib
import socket
import multiprocessing as mp
import queue
import requests
用于在连接到网站时获得更高成功率的标题

headers={'User-agent' : 'Mozilla/5.0'}
Main函数接受四个参数—队列、URL列表、输出文件和易受攻击URL列表

def mainFunction(q, URLList, Output, vulnURLS):
此列表用于在将字符串查询添加到url(')的末尾后,检查页面源列表中是否存在任何错误

这会在测试注入点之前将URL设置为正确的格式

    URLReplace = [("['", ""),("']",""), ("\n", ""), ("https://","http://"), ("\s", "%20"), ("\s", "%20")]
    URL = ''.join(str(URLList))
    for URL in URLList:
        if (z < len(URLReplace)):
            URL = URL.replace(URLReplace[z])
        z = z + 1
        URL = (URL + "'")
这将遍历列表以检查任何可能的漏洞。还返回404/400消息

        if (y < len(queries)):
            if queries[x] in htmlObject:
                print ("\t [+] " + URL)
                vulnURLS.append(URL)
                Output.open()
                for VURLS in vulnURLS:
                    Output.write(VURLS + '\n')
                Output.close()
            y = y + 1
        else:
            print ("\t [-] " + URL)
        except urllib.error.HTTPError as e:
            if e.code == 404:
            print("\t [-] Page not found.")
            if e.code == 400:
                print ("\t [+] " + URL) 
        except urllib.error.URLError as e:
            print("\t [-] URL Timed Out")
        except socket.timeout as e:
            print("\t [-] URL Timed Out")
        except socket.error as e:
            print("\t [-] Error in URL")
请帮我解决这个问题,我已经被困在这个问题上好几个小时了,我感到非常沮丧,因为我无法找到解决方案。我看的每一个模块都会跟随一个T,得到同样的错误


我尝试过多线程,但与多处理相比,它非常慢且不稳定。

更改为以下内容:

p = mp.Process(target=mainFunction, args=(q, Output))
p.start()

for url in URLList:
     q.put(url)
        if (y < len(queries)):
            if queries[x] in htmlObject:
                print ("\t [+] " + URL)
                vulnURLS.append(URL)
                Output.open()
                for VURLS in vulnURLS:
                    Output.write(VURLS + '\n')
                Output.close()
            y = y + 1
        else:
            print ("\t [-] " + URL)
        except urllib.error.HTTPError as e:
            if e.code == 404:
            print("\t [-] Page not found.")
            if e.code == 400:
                print ("\t [+] " + URL) 
        except urllib.error.URLError as e:
            print("\t [-] URL Timed Out")
        except socket.timeout as e:
            print("\t [-] URL Timed Out")
        except socket.error as e:
            print("\t [-] Error in URL")
if __name__=='__main__':
    q = mp.Queue()
    URLList = [i.strip().split() for i in open('sites.txt').readlines()]
    Output = open('output.txt', 'r')
    vulnURLS = []
    p = mp.Process(target=mainFunction, args=(q, URLList, Output, vulnURLS))
    p.start()
    q.put(mainFunction(URLList))
    q.close()
    q.join_thread()
    p.join()
p = mp.Process(target=mainFunction, args=(q, Output))
p.start()

for url in URLList:
     q.put(url)