Selenium Mouse over Python

时间:2018-07-28 18:43:28

标签: python-3.x selenium web-scraping

我正在尝试抓取instagram页面,以获取每个帖子的评论和喜欢的次数。我可以得到将鼠标放在照片上的值,但问题是instagram限制了它显示的帖子的div数量。 Selenium的move_to_element穿过目标div之前的所有div。因此,如果向下滚动配置文件以获取更多帖子,则包含第一个帖子的div消失并且selenium返回错误。我不知道该错误是否是因为它无法找到第一个元素div或返回至顶部以再次传递所有div时是否找不到目标div。

这是遍历div的循环:

while True:
    divs = http.find_elements_by_xpath(
        '//*[@id="react-root"]/section/main/div/div[2]/article/div[1]/div/div/div')
    for div in divs:
        try:
            action.move_to_element(div).perform()

        except Exception as e:
            print(e)
            continue

    http.execute_script(
        "window.scrollTo(0, document.body.scrollHeight);var lenOfPage=document.body.scrollHeight;")

    if http.find_elements_by_xpath('//*[@id="react-root"]/section/main/div/div[3]/article/div[2]/div') != []:
            break

这是错误:

Message: stale element reference: element is not attached to the page document  (Session info: chrome=68.0.3440.75)(Driver info: chromedriver=2.40.565383(76257d1ab79276b2d53ee976b2c3e3b9f335cde7),platform=Linux 4.13.0-45-generic x86_64)

0 个答案:

没有答案