Selenium自动操作滚动条时,debug有效,正常执行无效

使用selenium进行谷歌地图内容获取时,发现debug打断点时,需要手动点击一下last_element,然后页面循环,会不段的弹出自动化页面,并且输出结果正常,但正常执行或debug不打断点不手动点击时,模拟滚动就会失效,不知道是上面原因,请求解答。源代码如下:

import time
from selenium import webdriver
from selenium.webdriver import ActionChains
from selenium.webdriver.common.keys import Keys

# 启动 Chrome 浏览器
driver = webdriver.Chrome()

try:
    # 打开网页
    url = f'https://www.google.com/maps/@44.6690207,-79.3916043,15z?entry=ttu'
    driver.get(url)

    # 定位搜索框并输入关键词
    search_box = driver.find_element("name", "q")
    search_box.send_keys("移民")
    search_box.send_keys(Keys.RETURN)

    # 初始化 ActionChains 对象
    actions = ActionChains(driver)
    time.sleep(3)
    # 循环10次
    for _ in range(10):
        # 定位到最后一个 Nv2PK 元素
        last_element = driver.find_elements_by_class_name("Nv2PK")[-1]

        # 将鼠标移动到最后一个元素
        actions.move_to_element(last_element).perform()

        # 模拟按键向下滚动
        actions.send_keys(Keys.ARROW_DOWN).perform()
        time.sleep(2)
        print(last_element)

finally:
    # 关闭浏览器
    driver.quit()

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值