Multithreading 使用Selenium的Python线程

Multithreading 使用Selenium的Python线程,multithreading,python-3.x,selenium,Multithreading,Python 3.x,Selenium,我正在尝试在多个实例中使用(Selenium包)。但是,在第一个线程完全完成之前,实例不会启动。因此,浏览器实例打开、加载页面、休眠,然后第二个线程才开始 我需要同时运行实例 import threading import time from splinter import Browser def worker(proxy, port): proxy_settings = {"network.proxy.type": 1, "network

我正在尝试在多个实例中使用(Selenium包)。但是,在第一个线程完全完成之前,实例不会启动。因此,浏览器实例打开、加载页面、休眠,然后第二个线程才开始

我需要同时运行实例

import threading
import time
from splinter import Browser


def worker(proxy, port):
    proxy_settings = {"network.proxy.type": 1,
                      "network.proxy.ssl": proxy,
                      "network.proxy.ssl_port": port,
                      "network.proxy.socks": proxy,
                      "network.proxy.socks_port": port,
                      "network.proxy.socks_remote_dns": True,
                      "network.proxy.ftp": proxy,
                      "network.proxy.ftp_port": port
                      }

    browser = Browser('firefox',
                      profile_preferences=proxy_settings,
                      capabilities={'pageLoadStrategy': 'eager'}) #eager or normal
    print("Proxy: ", proxy, ":", proxy)
    browser.visit("https://mxtoolbox.com/whatismyip/?" + proxy)
    time.sleep(2)


ip1 = '22.22.222.222'
ip2 = '222.222.22.222'
p1 = int(2222)
p2 = int(2222)

p = []
p.append((ip1,p1))
p.append((ip2,p2))
x = 0
for pp in p:
    threading.Thread(target=worker(pp[0], pp[1])).start()
在我较长的代码中(上面是我试图找出为什么不能使用多线程),我的编辑器中也出现了一个错误

未使用局部变量“browser”值


这是因为您没有使用
worker
函数启动线程,实际上最后一行应该是这样的:

threading.Thread(target=worker, args=(pp[0], pp[1])).start()
至于您的编辑器问题,我想说它依赖于编辑器,没有任何信息,很难说(我要提到的是运行
pylint
并不表示这样的警告)