Python / Seleium:使用不变的网址抓取网站

时间:2016-12-22 18:40:13

标签: python-2.7 selenium-webdriver web-scraping

我试图在所有可以在迪拜用餐的地方刮Dubai's Visitor Page。该页面有一个不变的URL,但我想抓取页面上的所有61页。我目前的代码只能在第一页上找到我的名字。我想提取更多信息;但是,在我尝试提取更多信息之前,我觉得我需要让循环正确。

#import libraries
import csv
from selenium import webdriver
import re
from selenium.common.exceptions import NoSuchElementException


for i in range(1, 11, 1):
    while True:
        baseurl = "http://www.visitdubai.com/en/shop-dine-relax/directory/D68E832C-A447-4DCB-ADE4-858485D880A5"
        driver = webdriver.PhantomJS()
        driver.get(baseurl)
        for link in driver.find_elements_by_xpath("""//*[@id="divHomeWrap"]/div[3]/div[1]/div[4]/div[2]/div[1]/div/div/div/ul/li/a/span"""):
            print link.text
        break

1 个答案:

答案 0 :(得分:0)

this post here.获得了一些灵感但是如果你想看到的话,这是我的最终代码。

def getnames(driver):
    for name in driver.find_elements_by_xpath("""//*[@id="divHomeWrap"]/div[3]/div[1]/div[4]/div[2]/div[1]/div/div/div/ul/li/a/span"""):
        print name.text

while True:
    getnames(driver)
    nextpage = driver.find_element_by_id("plhcontent_0_hlNext")
    nextpage.click()
    time.sleep(2)