Селен. Питон. Список подписчиков в всплывающем окне Instagram не прокручивается внизJavascript

Форум по Javascript
Ответить Пред. темаСлед. тема
Anonymous
 Селен. Питон. Список подписчиков в всплывающем окне Instagram не прокручивается вниз

Сообщение Anonymous »

использует: < /p>

python = "^3.12.7"

selenium = "^4.30.0" < /p>
< /blockquote>
Инициализация переменной "Драйвер": < /p>

Код: Выделить всё

from time import sleep
from selenium import webdriver
from selenium.webdriver import ActionChains
from selenium.webdriver.common.keys import Keys
from selenium.webdriver.chrome.service import Service
from selenium.webdriver.support import expected_conditions as ec
from selenium.webdriver.support.select import Select
from selenium.webdriver.support.wait import WebDriverWait
from selenium.webdriver.common.action_chains import ActionChains
from selenium.webdriver.common.by import By

driver = webdriver.Chrome()
driver.get('https://www.instagram.com/')
sleep(3)

#   *   *   *
#   Sign in code here
#   *   *   *

#  chose user account for example:
driver.get('https://www.instagram.com/geeks_for_geeks/followers/')
sleep(3)

driver.find_element(By.PARTIAL_LINK_TEXT, 'followers').click()
print('4')

#  set followers pop-up list to new variable (i checked three XPATH based on the page code source, see img below):
#  pop_up_window = driver.find_element(By.XPATH, '/html/body/div[4]/div[2]/div/div/div[1]/div/div[2]/div/div/div/div/div[2]/div/div/div[3]')
#  pop_up_window = driver.find_element(By.XPATH, '/html/body/div[4]/div[2]/div/div/div[1]/div/div[2]/div/div/div/div/div[2]/div/div/div[3]/div[1]')
pop_up_window = driver.find_element(By.XPATH, '/html/body/div[4]/div[2]/div/div/div[1]/div/div[2]/div/div/div/div/div[2]/div/div/div[3]/div[1]/div')

Тогда я использую несколько вариантов различий для попытки прокрутить вниз:
1 -е. - Использует Actionchains от selenium.webdriver.common.action_chains:

Код: Выделить всё

num_chains = 10
for _ in range(num_chains):
print('=========== Chains Start =================')
ActionChains(driver).send_keys(Keys.END).perform()
< /code>
 2nd. - Использует Javascript:  
v2.1
while True:
driver.execute_script("arguments[0].scrollTop = arguments[0].scrollHeight", pop_up_window)
sleep(2)
v2.2

Код: Выделить всё

while True:
driver.execute_script('arguments[0].scrollTop = arguments[0].scrollTop + arguments[0].offsetHeight;', pop_up_window)
sleep(2)
v2.3
num_chains = 10
followers_step = 10
for _ in range(num_chains):
driver.execute_script("arguments[0].scrollTop = arguments[1]", pop_up_window, followers_step)
followers_step += followers_step
sleep(3)
< /code>
Наконец-то я получаю всплывающее окно последователей, в котором я должен сделать прокрутку вниз, но слайдер для прокрутки справа не появляется, и список пользователей не прокручивается, на выводе я всегда получаю тот же результат, который сразу же открывался в всплывающем списке последующих (заметил, что когда процесс прокрутки начинается-кнопка закрытия всегда выделяется):


И я всегда получаю один и тот же результат без прокрутки:


Подробнее здесь: https://stackoverflow.com/questions/795 ... scroll-dow
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «Javascript»