Есть парсер который парсит данные и сохраняет их в список потом достает из списка и сохраняет каждую инфу отдельно в файлы и все это работает в цикле. Код прекрасно работает, но на сервере перестало работать. И дает ошибку Message: unknown error: session deleted because of page crash
from unknown error: cannot determine loading status
Скрипт сохраняет данные в список но не создает файл и не записывает в файл данные из списка.
#Библиотеки
from selenium.webdriver.chrome.service import Service
from bs4 import BeautifulSoup
from selenium import webdriver
import time
#Ссылка на сайт
URL = 'https://equanity.notion.site/af08990fbca340b38301653a7da4c9c3'
#Настройки веб-драйвера
options = webdriver.ChromeOptions()
options.headless = True
options.add_argument("--no-sandbox")
options.add_argument("user-agent=Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/104.0.0.0 Safari/537.36")
options.add_argument('--disable-dev-shm-usage')
options.add_argument("--disable-blink-features=AutomationControlled")
#Путь к веб-драйверу
driver = webdriver.Chrome(executable_path = "/home/tbot/chromedriver",options = options)
driver.maximize_window()
#Получаем название и ссылки всех кнопок в главной странице (Карта Гайда))
def get_info():
while True:
try:
driver.get(url=URL)
time.sleep(7)
source = driver.page_source
soup = BeautifulSoup(source, 'html.parser')
all_buttons_get = soup.find_all(class_ = "pseudoSelection")
buttons_name = []
buttons_href = []
for item in all_buttons_get:
try:
item_text = item.text
item_href = "https://equanity.notion.site" + item.find('a')['href']
buttons_name.append(item_text)
buttons_href.append(item_href)
except Exception as ex:print(ex)
del buttons_name[0:2]
file = open("/home/tbot/name.txt", "w", encoding = "utf-8")
file.write("\n".join(buttons_name).join("\n"))
print(buttons_name)
print(buttons_href)
for inf in buttons_name:
file.write("%s\n" %inf)
file.close()
except Exception as ex:print(ex)
#Получем информацию внутрий кнопок 2-уровня
count = 1
try:
del buttons_href[0:2]
for hrefs in buttons_href:
driver.get(url=hrefs)
time.sleep(7)
source_2 = driver.page_source
soup = BeautifulSoup(source_2, 'lxml')
text = [i.text for i in soup.find_all('div', class_='notion-selectable')]
li = []
for i in text:
if i not in li:
li.append(i)
del li[0:6]
#Полученную инфу записываем в файлы
file = open(f"/home/tbot/data/{count}_info.txt", "w", encoding = "utf-8")
file.write("\n".join(li).join("\n"))
for item in li:
file.write("%s\n" % item)
file.close()
count += 1
except Exception as ex:print(ex)
time.sleep(85500)
if __name__ == '__main__':
get_info()