Python池多处理请求挂起

时间:2019-05-10 13:14:50

标签: python python-3.x python-requests python-multiprocessing

我程序中的代码实际上同时执行10个python请求并同时处理它们的输出,它工作了一段时间,但我更改了一些内容,无法弄清是什么导致了它。

下面的代码是调用的代码,该代码似乎在第3行和第4行之间冻结,因此在执行多线程请求的过程中。

'print(“ failed to close”)行不打印,似乎表明程序未到达pool.close()指令。

def onionrequestthreaded(onionurl):
    session = requests.session()
    session.proxies = {}
    session.proxies['http'] = 'socks5h://localhost:9050'
    session.proxies['https'] = 'socks5h://localhost:9050'

    onionurlforrequest = "http://" + onionurl
    #print(onionurlforrequest)
    print("failed with proxy session")
    try:
        print("failed in request")
        r = session.get(onionurlforrequest, timeout=15, allow_redirects=True)
        online = 2
        print("failed in text extraction")

        textis = r.text
    except:
        print("failed in except")

        #print("failed")
        online = 1

        textis = ""
    print("failed in return")
    return textis, online

挂起该函数的函数紧接在'print(“ failed in return”)'行之后,这似乎表明该请求未正确终止并返回期望值。

navbar-expand-,g

非常令人困惑,但我可能正在做一些简单的事情。当我拔头发时,请告诉我是否有解决方案。

0 个答案:

没有答案