Python 我尝试在驱动程序中加载新值。按css选择器查找元素不使用新值更新

Python 我尝试在驱动程序中加载新值。按css选择器查找元素不使用新值更新,python,selenium,selenium-chromedriver,Python,Selenium,Selenium Chromedriver,我有一个使用selenium驱动程序查找web元素的函数。当我第一次运行时,它的“查找元素”和第二次运行时它的“确定”会在页面更改后返回与第一次相同的值。为什么我无法在线查找解决方案 def first(): driver.current_url time.sleep(3) driver.execute_script("window.scrollTo(0, 1500)") time.sleep(5) post_to_comment

我有一个使用selenium驱动程序查找web元素的函数。当我第一次运行时,它的“查找元素”和第二次运行时它的“确定”会在页面更改后返回与第一次相同的值。为什么我无法在线查找解决方案

def first():  
    driver.current_url
    time.sleep(3)
    driver.execute_script("window.scrollTo(0, 1500)")
    time.sleep(5)
    post_to_comment = driver.find_elements_by_css_selector('.kIKUG')
    # do something after its call from a while loop its skip this.
first()
while n < 10:
   driver.get(new_url)
   n += 1
   first()
def first():
driver.current\u url
时间。睡眠(3)
执行_脚本(“window.scrollTo(01500)”)
时间。睡眠(5)
post_to_comment=驱动程序。通过_css_选择器('.kIKUG')查找_元素
#从while循环调用后执行某些操作跳过此操作。
第一()
当n<10时:
获取驱动程序(新的url)
n+=1
第一()

问题是我在第一次执行while循环后没有将n设置为0,并且程序没有进入while,因为n大于10。因此问题与selenium无关。

问题是我在第一次执行while循环后没有将n设置为0,并且程序没有进入while,因为n大于10。因此问题不存在与selenium相关。

我认为您需要发布更多代码。。。这看起来像一个简短的版本。。。这行的意思是什么?:driver.current\u url如果驱动程序位于最后一个页面上,但不是它的指针,我会尝试切换到当前页面。这只是给我一个旧的结果。我想所做的就是获取当前url,但你甚至不在那里分配变量。问题可能是您得到的是相同的URL?或者缺少WebDriverWait,或者检查过时的元素异常。(如果睡眠时间不够长)您应该尝试/捕获对post_to_comment webelement数组的调用,以查看是否发现陈旧元素异常。顺便说一句,第一次睡眠可能是不必要的。(取决于站点是否是“延迟加载”。)看起来您一直在反复加载同一页面,告诉它滚动,但一直选择相同的第一个元素。可能会发布网站,或一些HTML进一步输入。我认为你需要发布更多的代码。。。这看起来像一个简短的版本。。。这行的意思是什么?:driver.current\u url如果驱动程序位于最后一个页面上,但不是它的指针,我会尝试切换到当前页面。这只是给我一个旧的结果。我想所做的就是获取当前url,但你甚至不在那里分配变量。问题可能是您得到的是相同的URL?或者缺少WebDriverWait,或者检查过时的元素异常。(如果睡眠时间不够长)您应该尝试/捕获对post_to_comment webelement数组的调用,以查看是否发现陈旧元素异常。顺便说一句,第一次睡眠可能是不必要的。(取决于站点是否是“延迟加载”。)看起来您一直在反复加载同一页面,告诉它滚动,但一直选择相同的第一个元素。可能会发布网站,或一些HTML以供进一步输入。