WinError 10061 Подключение не установлено, т.к. конечный компьютер отверг запрос на подключение Python Selenium
Написал часть кода для парсера. Если выношу его в отдельный файл - всё работает. Если добавляю его в парсер - получаю ошибку:
WARNING:urllib3.connectionpool:Retrying (Retry(total=2, connect=None, read=None, redirect=None, status=None)) after connection broken by 'NewConnectionError('<urllib3.connection.HTTPConnection object at 0x00000296B6C58580>: Failed to establish a new connection: [WinError 10061] Подключение не установлено, т.к. конечный компьютер отверг запрос на подключение')': /session/fbf228b0-2599-43ae-b909-94f29eb31307/url
Сам код:
driver.get('https://wiki.cs.money/ru')
csmoney_sticker_price_input = driver.find_element_by_xpath('/html/body/div[1]/div/div[2]/div[1]/div[4]/div[2]/div[1]/input')
csmoney_sticker_price_input.clear()
csmoney_sticker_price_input.send_keys(stickers_dict[sticker_price_number]['name'])
while True:
try:
script_raw = driver.find_element_by_id('__NEXT_DATA__').get_attribute('innerHTML')
break
except NoSuchElementException:
pass
script = json.loads(script_raw)
csmoney_sticker_url = driver.current_url[34:]
csmoney_sticker_name_id_href = 'sticker({"input":{"id":"' + csmoney_sticker_url + '"}})'
name_id = script['props']['pageProps']['initialApolloState']['ROOT_QUERY'][csmoney_sticker_name_id_href]['name_id']
url = 'https://wiki.cs.money/graphql'
body = {"operationName":"price_trader_log","variables":{"name_ids":[name_id]},"query":"query price_trader_log($name_ids: [Int!]!) {\n price_trader_log(input: {name_ids: $name_ids}) {\n name_id\n values {\n price_trader_new\n time\n }\n }\n}\n"}
headers = {
'Host': 'wiki.cs.money',
'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:86.0) Gecko/20100101 Firefox/86.0',
'Accept': '*/*',
'Accept-Language': 'ru-RU,ru;q=0.8,en-US;q=0.5,en;q=0.3',
'Referer': 'https://wiki.cs.money/ru/stickers/sticker-adren-katowice-2019',
'content-type': 'application/json',
'Origin': 'https://wiki.cs.money',
'Content-Length': '257',
'Connection': 'keep-alive',
'TE': 'Trailers',
'Pragma': 'no-cache',
'Cache-Control': 'no-cache'
}
r = requests.post(url, data=json.dumps(body), headers=headers)
res = r.text
res = json.loads(res)
csmoney_sticker_price = res['data']['price_trader_log'][0]['values'][0]['price_trader_new']
print(stickers_dict[sticker_price_number]['name'] + ' - ' + csmoney_sticker_price)
driver.close()
driver.quit()
Настройки Selenium правильные, в обеих файлах они одинаковые. Но в парсере до этого кода с помощью Selenium делается запрос по другому url. Надеюсь на помощь. Спасибо