li = driver.find_elements_by_css_selector('div.crop-filters.ng-scope .btn')
li2 = li[1:50]
for x in range(len(li2)):
if li2[x].is_displayed():
ActionChains(driver).move_to_element(li2[x]).click().perform()
time.sleep(1)
Не дай бог на такое новичкам смотреть!
По пунктам:
li2 = li[1:50] - что это за срез списка такой? По любому есть варианты составить более подходящий локатор для поиска ссылок
for x in range(len(li2)) - может лучше так?
for el in li2:
if el.is_displayed():
....
3, Использование ActionChains в таких простых ситуациях смысла особого не имеет. А скорость теста и надежность явно будет ниже.
4. time.sleep(1) - за такое расстрел сразу. Но иногда действительно не обойтись.