簡體   English   中英

Selenium Python:無法向下滾動覆蓋窗口

[英]Selenium python: can't scroll down an overlay window

在Quora上,我想滾動到單擊查看支持者按鈕時要到達的窗口底部,為了獲取所有支持者名稱,向下滾動標准瀏覽器窗口的代碼似乎不適用於覆蓋窗口,有什么建議嗎? 這是我的向下滾動功能和單擊“查看upvoters”按鈕的代碼:

def scrolldown(browser):

    src_updated = browser.page_source
    src = ""
    while  src != src_updated:
        src = src_updated
        time.sleep(5)
        browser.execute_script("window.scrollTo(0, document.body.scrollHeight);")
        time.sleep(5)
        src_updated = browser.page_source      
    #if (DEBUG): print ("window maximized...")
    return browser

browser.get('https://www.quora.com/What-is-it-like-to-regret-having-children')
for p in browser.find_elements_by_class_name('AnswerVoterListModalLink'):
        time.sleep(5)

        p.click()
        time.sleep(5)
        browser=scrolldown(browser)
        time.sleep(5)
        c=0
        for div in upvoter_name :#browser.find_elements_by_class_name('author_info'):
           list_of_upvoters.append(div.find_element_by_class_name('user').text)
           c+=1
        print("number of upvoters for this answer is :" + str(c))

我認為您可以使用此答案中的內容向下滾動到最后一個元素。 根據答案,您可以使用以下內容向下滾動到最后一個元素:

from selenium.webdriver.common.action_chains import ActionChains

element = driver.find_element_by_xpath("//div[@class='pagedlist_item'][last()]")

actions = ActionChains(driver)
actions.move_to_element(element).perform()

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM