【发布时间】:2021-05-02 15:08:30
【问题描述】:
我已经解决了类似性质的现有问题和谷歌搜索结果,在我目前正在抓取的特定网站中,提出的每个解决方案都不适用于我。
https://dutchie.com/embedded-menu/revolutionary-clinics-somerville/menu
我正在向 body 元素发送向下翻页键,该元素会加载要抓取的每个项目。我有两个问题,首先我无法检测到滚动何时停止。其次,我必须在浏览器窗口打开时手动单击它以允许发送密钥。我不知道如何通过代码模仿同样的焦点给予行为。
elem = driver.find_element_by_tag_name("body")
elem.send_keys(Keys.PAGE_DOWN)
我在许多不同的迭代中尝试了以下方法,无论我在页面下方多远,或者我是否使用了 innerHeight 或 body 而不是 documentElement,打印的数字都不会收费。
height = driver.execute_script("return document.documentElement.scrollHeight")
如果我尝试使用类似的方法向下滚动页面,该页面不会移动。
driver.execute_script("window.scrollTo(0, document.body.scrollHeight);")
我不确定这是否与 iframe 有关,或者我只是误解了最佳方法。
仍然无法找到可靠检测页面结尾的方法。
谢谢!
【问题讨论】:
标签: python selenium web-scraping