У меня есть список пользователей, для которых я хочу извлечь своих подписчиков в Instagram. Я пытаюсь прокрутить диалоговое окно подписчика и добавить каждого подписчика в список, поэтому я получаю полный список подписчиков пользователя, прежде чем перейти к следующему пользователю.
Это мой код:
for username in username_column:
currentRow=currentRow+1
userprofile = browser.get('https://www.instagram.com/' + username)
# Find the "followers" link, click it and wait 2 seconds
followersLink = browser.find_element_by_xpath("//ul/li[2]/a")
followersLink.click()
time.sleep(2)
# Find the dialog box
followersList = browser.find_element_by_css_selector("div[role=\'dialog\'] ul")
numberOfFollowersInList = len(followersList.find_elements_by_css_selector('li'))
followersList.click()
actionChain = webdriver.ActionChains(browser)
followers = []
# As long as the number of followers in the list is lower than number required
# press SPACE. After each press, we refresh the number of users we have in the list
# and print it.
while (numberOfFollowersInList < max):
actionChain.key_down(Keys.SPACE).key_up(Keys.SPACE).perform()
time.sleep(2)
numberOfFollowersInList = len(followersList.find_elements_by_css_selector('li'))
followersInList = followersList.find_elements_by_css_selector('li')
for element in followersInList:
followerData = element.text
print(followerData)
followers.append(followerData)
#print(followers)
followersList.click()
Однако это возвращает мне много повторяющихся данных о подписчиках, и когда я наблюдаю, как браузер (драйвер) делает это в Instagram, он как будто застревает во время прокрутки и не знает, с чего начать прокрутку после прокрутки. один раз. Надеюсь, понятно, что я написал.
Заранее спасибо!