Я создаю бота для веб-клиента skype (https://web.skype.com/en) с использованием Selenium. Все работает как шарм, но через несколько мгновений я получаю ошибку 10048:
Адрес уже используется. Обычно разрешено только одно использование каждого адреса сокета (протокол/IP-адрес/порт)Python SkypeWebClient-Bot с селеном (ошибка 10048)
Я проверил netstat -n и увидел, что моя программа создает огромное количество соединений.
from selenium import webdriver
from selenium.webdriver.common.keys import Keys
import time
#driver = webdriver.Chrome(executable_path='c:\Python34\chromedriver.exe')
driver = webdriver.Firefox(executable_path='c:\Program Files\MozillaFirefox\firefox.exe')
driver.get("https://web.skype.com/de/")
time.sleep(8)
login = driver.find_element_by_id("username")
login.send_keys("username")
password = driver.find_element_by_id("password")
password.send_keys("password" + Keys.RETURN)
time.sleep(15)
newest2 = ""
sending = driver.find_element_by_name("messageInput")
message = driver.find_element_by_xpath("//*[@id='chatComponent']/div/swx-navigation/div/div/div/swx-chat-log/div[2]")
while 1==1 :
newest = message.get_attribute("textContent")
print(newest)
if newest2 != newest:
if '!reactionTest' in newest:
sending.send_keys("Check" + Keys.RETURN)
newest2 = newest
print("done")
Я думаю, что каждый раз, когда я называю newest = message.get_attribute("textContent")
новое соединение создается. Потому что, когда я не использую элемент сообщения, который всегда показывает самое новое сообщение, я не сталкиваюсь с проблемой. Я не могу найти решение для google относительно этой проблемы, включая селен. Разве нет возможности закрыть каждое соединение в конце бесконечного цикла? Любая помощь очень ценится :)