首页 > 其他分享 >多线程连接池报错报警告[connectionpool.py:305 ] [WARNING] Connection pool is full, discarding connection: 127.0.

多线程连接池报错报警告[connectionpool.py:305 ] [WARNING] Connection pool is full, discarding connection: 127.0.

时间:2023-11-30 19:24:20浏览次数:48  
标签:webdriver driver selenium Connection WebDriverWait import 多线程 pool

第一种方法:

按照建议

WebDriverWait
帮助解决了问题

 

from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
from selenium.webdriver.common.by import By
from selenium.common.exceptions import TimeoutException

我用过例如

text_box = WebDriverWait(driver, 10).until(EC.presence_of_element_located((By.XPATH,"the_actual_X_path")))

copy_button = WebDriverWait(driver, 20).until(EC.element_to_be_clickable((By.XPATH,
                                    "the_actual_X_path")))

第二种方法(我用这个没有报警告了):

你可以在webdriver初始化中使用参数 keep_alive=False,这是因为selenium使用connectionPool管理连接,如果keep_alive为True,它只使用webdriver实例中唯一的connectionPool,所以当多线程操作默认设置的单个connectionPool时maxSize 1,线程1获取连接1,线程2无法获取连接并创建新连接,当它们的请求结束并将连接放回到池中时,发生错误,这两个连接将被放入1大小的池中,你可以看到详细信息在来自 urllib3 和 selenium 的 ConnectionPool.py 中

之前是这样的:

self.driver = webdriver.Chrome() 添加参数: self.driver = webdriver.Chrome(keep_alive=False) 运行不会报警告了

标签:webdriver,driver,selenium,Connection,WebDriverWait,import,多线程,pool
From: https://www.cnblogs.com/xingyaowuhen/p/17868064.html

相关文章

  • 多开中多线程,每个线程使用一个单例
    defsingleton(cls):threadNames=[]#线程名称列表instances={}#实例字典defget_instance(threadName,*args,**kwargs):"""获取单例实例,通过线程名创建单例,保障每个线程里面的实例保持一致参数:-threadName:......
  • ThreadPoolExecutor线程池内部处理浅析
    我们知道如果程序中并发的线程数量很多,并且每个线程都是执行一个时间很短的任务就结束时,会因为频繁创建线程而大大降低系统的效率,因此出现了线程池的使用方式,它可以提前创建好线程来执行任务。本文主要通过java的ThreadPoolExecutor来查看线程池的内部处理过程。1ThreadPoolExec......
  • XP连接高版本SQLServer提示:ConnectionOpen(SECDoClientHandShake())SSL安全错误解决方
    XP连接高版本SQLServer提示:ConnectionOpen(SECDoClientHandShake())SSL安全错误解决方案https://blog.csdn.net/m0_46236949/article/details/130251762EnableTLS1.2onWindowsXPhttps://www.smartftp.com/pt-br/support/kb/2754......
  • Java多线程转账
    Java多线程转账关键词:多线程,Java以前的一道面试题,要求是使用Java多线程,实现一个转账业务。不考虑数据库,不考虑其他第三方系统。只考虑当前Java程序内各个账户进行转账,保证转账金额正确性和转账功能效率。想起那大约还是两年前,是线上面试,面试官给完题目就关闭视频通话,让我自己去......
  • C# 比使用app.config,用自定义的ConnectionString
    usingSystem.Data;usingSystem.Data.SqlClient;usingSystem.IO;usingSystem.Reflection;namespaceAssist{publicclassContextHelper{publicstaticstringConnectionString;publicstaticstringSerializePath=Path.GetDirector......
  • 多线程网络通信
    当多客户端同时连接和服务端持续监听时,涉及到多线程,每当有新的客户端连接时,就创建一个新的线程来处理与该客户端的通信,从而允许服务器端同时与多个客户端建立连接。直接贴代码:1//main.cpp2#include<QCoreApplication>3#include<iostream>4#include<QDebug>5#......
  • Linux多线程同步机制(下)
    @TOC前言一、读写锁多线程同步机制中的读写锁(Read-WriteLock)是一种特殊的锁机制,用于控制对共享资源的读写访问。读写锁允许多个线程同时读取共享资源,但在写操作时需要独占访问。读写锁的基本原则是:多个线程可以同时获取读锁,但只有一个线程可以获取写锁。当有线程持有写锁时,其他线......
  • socket测试(多线程,课上测试)
    基于socket实现daytime(13)服务器(端口我们使用13+后三位学号)和客户端服务器响应消息格式是“客户端IP:XXXX客户端PID:XXXX服务器tid:XXXX服务器实现者学号:XXXXXXXX当前时间:XX:XX:XX”注意服务器端要通过多线程实现,每次客户端链接到服务器,服务器就启动一个新线程和客户端连......
  • 多线程复制文件夹
    pThread复制文件夹C++通过pthread复制文件夹。主要处理普通文件和链接文件。事实上只要处理好链接文件即可。我们可以通过判断链接的文件是文件夹还是文件即可判断对当前文件是通过文件直接复制还是通过文件夹递归复制。#include<iostream>#include<dirent.h>#include<stri......
  • Python Multiprocessing Pool's Task Scheduling
    mppool的任务调度遵循FIFO机制。对任务数组,逐个分配进程资源。如对于p0-pn,pi对应的是a[i]的资源。一般来说sizeof(a)>sizeof(p),即任务数大于进程资源数。此时,空闲的资源将进一步使用FIFO,选取任务进行执行,从而避免资源浪费。因此,在排布a[i]的时候,基本是不需要进行时长大小......