我正在尝试利用 Google Photos 幻灯片构建一个由 Raspberry Pi 驱动的数字相册。理想情况下,我希望能够通过 Selenium 自动化登录过程,然后使用 BeautifulSoup 解析每个图像的唯一 url 的 html 源。
Google 相册似乎一次加载约 12 张图像(根据图像方向可能更多/更少),这使得获取所有图像网址的列表变得更加困难。
我尝试使用以下变体来滚动图像的加载:
driver.execute_script("window.scrollTo(0, document.body.scrollHeight);")
不幸的是,该代码不会导致 FireFox 滚动。任何指示将不胜感激。我已经包含了我的混淆代码以供审查:
from selenium import webdriver
from selenium.webdriver.common.keys import Keys
import time
from bs4 import BeautifulSoup
driver = webdriver.Firefox()
# print(driver.current_url)
driver.get('https://accounts.google.com/ServiceLogin? sacu=1&continue=https%3A%2F%2Fphotos.google.com%2Flogin&hl=en#identifier')
# print(driver.current_url)
elem = driver.find_element_by_name('Email')
elem.send_keys('******')
elem.send_keys(Keys.ENTER)
time.sleep(5)
elem = driver.find_element_by_name('Passwd')
elem.send_keys('******')
elem.send_keys(Keys.ENTER)
time.sleep(10)
driver.get('direct link to shared album')
time.sleep(5)
driver.execute_script("window.scrollBy(0, document.body.scrollHeight);")
最佳答案
正如 @Y-B Cause 所提到的,您可以尝试 Keys
来解决您的问题:
from selenium.webdriver.common.keys import Keys
driver.switch_to_active_element().send_keys(Keys.PAGE_DOWN)
关于Python Selenium 滚动到底部 Google Photos 相册,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41112263/