Колесо мыши прокручивается вниз во всплывающем окне с помощью Selenium - PullRequest
0 голосов
/ 02 июля 2019

Я пытаюсь напечатать список своих зрителей историй в Instagram с помощью Selenium, но я могу получить только первые 11, так как другие зрители скрыты и могут быть просмотрены только после прокрутки мыши над рамкой «Зрители».Я до сих пор очень новичок в селене и в кодировании в целом.

Проблема здесь в том, что нет конкретного элемента, к которому я хочу прокрутить, ни прокрутки до конца кадра, я хочу иметь возможность прокрутить вниз определенное смещение за раз и напечатать результатпока список не исчерпан.

То, что я уже пробовал без успеха:

  • с помощью клавиш для прокрутки вниз, как пробел, стрелка вниз, страница вниз: ничего.
  • window.scrollBy:не будет работать, потому что он будет прокручивать все окно, а не всплывающее окно зрителей
  • , перемещая мышь внутри фрейма и затем применяя execute_script("scroll(0,400)"), без результата
  • execute_script("arguments[0].scrollTop = arguments[0].scrollHeight", scr1) также без успеха

Вот часть моего кода:


#to find the x button and then move mouse inside the frame
x=browser.find_element_by_xpath('//html/body/div[3]/div/div/div[1]/div/div[2]/button/span')
action.move_to_element(x).perform()
action.move_by_offset(0, 50).perform()
time.sleep(2)

#extract viewers 
viewersPanel=browser.find_element_by_xpath('/html/body/div[3]/div/div/div[2]')
viewers=viewersPanel.text
print (viewers)

Сейчас это работает, но только для первых 11 появившихся зрителей.Любая идея о том, где и как код прокрутки должен быть?или есть лучшие способы сделать эту задачу?

Заранее спасибо

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...