Multithreading 使用Selenium的Python线程
我正在尝试在多个实例中使用(Selenium包)。但是,在第一个线程完全完成之前,实例不会启动。因此,浏览器实例打开、加载页面、休眠,然后第二个线程才开始 我需要同时运行实例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
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
并不表示这样的警告)