使用python和selenium来抓取动态网页

Kou*_*hik 4 python selenium

在网站上,有在标顶部的几个环节1,2,3,和next.如果按下由数字标记的链接,则会将某些数据动态加载到内容中div.如果next被按下,它会用标签页4,5,6,next和第4页中的数据显示.

我想从内容中抓取div所有链接的数据(我不知道有多少,它一次只显示3个next)

请举例说明如何操作.例如,请考虑网站www.cnet.com.

请指导我使用硒下载系列页面并解析它们以自己处理美味的汤.

jfs*_*jfs 10

总体布局(未测试):

#!/usr/bin/env python
from contextlib import closing
from selenium.webdriver import Firefox # pip install selenium

url = "http://example.com"

# use firefox to get page with javascript generated content
with closing(Firefox()) as browser:
    n = 1
    while n < 10:
        browser.get(url) # load page
        link = browser.find_element_by_link_text(str(n))
        while link:
           browser.get(link.get_attribute("href")) # get individual 1,2,3,4 pages
           #### save(browser.page_source)
           browser.back() # return to page that has 1,2,3,next -like links
           n += 1
           link = browser.find_element_by_link_text(str(n))

        link = browser.find_element_by_link_text("next")
        if not link: break
        url = link.get_attribute("href")
Run Code Online (Sandbox Code Playgroud)