Yaroslav Rsx, добрый день!
Вы немного усложнили способ получения активных пользователей ветки этого сайта.
Страницы форума доступны любому, в том числе незарегистрированному, пользователю.
Нет смысла логиниться.
Посмотрите мой код, запустите.
import requests
from bs4 import BeautifulSoup
from pprint import pprint
# %%time
list_nicknames = []
url = r"https://forum.excalibur-craft.ru/forum/14-флудилка/?page="
for i in range(1,228):
r = requests.get(url+str(i))
soup = BeautifulSoup(r.content)
all_rows = soup.find_all("div", {"class": "ipsDataItem_meta"})
for el in all_rows:
if el.find("a") is not -1 and el.find("a") is not None:
nickname = el.find("a").get_text()
list_nicknames.append(nickname)
uniq_nicknames = set(list_nicknames)
print(len(list_nicknames)) # 5671 пользователя
print(len(uniq_nicknames)) # 2126 уникальных
# pprint(uniq_nicknames)
Успехов в парсинге)
UPD:
Код выше тестировался в Google.Colab - ошибок не было.
Интерпретатор в связке с PyCharm или SiblimeText возвращает ошибку.
В этом случае стоит попробовать так:
import requests
from bs4 import BeautifulSoup
from pprint import pprint
list_nicknames = []
url = r"https://forum.excalibur-craft.ru/forum/14-флудилка/?page="
for i in range(1,228):
r = requests.get(url+str(i))
soup = BeautifulSoup(r.content, "html.parser")
all_rows = soup.find_all("div", {"class": "ipsDataItem_meta"})
for el in all_rows:
if el.find("a") != -1 and el.find("a") is not None:
nickname = el.find("a").get_text()
list_nicknames.append(nickname)
uniq_nicknames = set(list_nicknames)
print(len(list_nicknames)) # 5671 пользователя
print(len(uniq_nicknames)) # 2126 уникальных
# pprint(uniq_nicknames)