【问题标题】:Python/Seleium: Scraping website with unchanging urlPython/Selenium:使用不变的 url 抓取网站
【发布时间】:2016-12-22 18:40:12
【问题描述】:

我正在尝试搜索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

【问题讨论】:

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


    【解决方案1】:

    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)
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多