При первом щелчке элемента eventList-5e5f25ca
открывается новая страница, где нет элементов с классом eventList-5e5f25ca
.В строке driver.find_elements_by_class_name("eventList-5e5f25ca")[index]
появляется ошибка, поскольку список элементов пуст и вы пытаетесь щелкнуть по элементу с индексом 1.
Если вы хотите получить все события, сначала соберите ссылки, а затем откройте их в отдельныхцикл:
base_url = 'https://www.bandsintown.com/?came_from=257&page='
events = []
for i in range(1, 4):
driver.get(base_url + str(i))
# get events links
event_list = driver.find_elements_by_css_selector('div[class^=eventList-] a[class^=event-]')
# collect href attribute of events in even_list
events.extend(list(event.get_attribute("href") for event in event_list))
print(len(events))
# iterate throw all events and open them.
for event in events:
driver.get(event)
Вы также можете избежать использования цикла for i in range(1, 3):
, нажав кнопку Просмотреть все .
Если ваша цель - очистить данные, а не тестировать, вы можете это сделать.намного быстрее, используя такие библиотеки, как запросы , beautifulsoup , scrapy и т. д.Все данные поступают в формате json с использованием простого запроса.