Skrobanie z Scrapy i Selenium

Mam pająka drapiącego, który indeksuje stronę, która ładuje zawartość za pomocą javascript na stronie. Aby przejść do następnej strony, aby zeskrobać, używam Selenium, aby kliknąć link miesiąca na górze strony.

Problem polega na tym, że mimo iż mój kod przesuwa się przez każde łącze zgodnie z oczekiwaniami, pająk po prostu odrzuca dane z pierwszego miesiąca (wrzesień) za liczbę miesięcy i zwraca te zduplikowane dane.

Jak mogę to obejść?

from selenium import webdriver

class GigsInScotlandMain(InitSpider):
        name = 'gigsinscotlandmain'
        allowed_domains = ["gigsinscotland.com"]
        start_urls = ["http://www.gigsinscotland.com"]


    def __init__(self):
        InitSpider.__init__(self)
        self.br = webdriver.Firefox()

    def parse(self, response):
        hxs = HtmlXPathSelector(response)
        self.br.get(response.url)
        time.sleep(2.5)
        # Get the string for each month on the page.
        months = hxs.select("//ul[@id='gigsMonths']/li/a/text()").extract()

        for month in months:
            link = self.br.find_element_by_link_text(month)
            link.click()
            time.sleep(5)

            # Get all the divs containing info to be scraped.
            listitems = hxs.select("//div[@class='listItem']")
            for listitem in listitems:
                item = GigsInScotlandMainItem()
                item['artist'] = listitem.select("div[contains(@class, 'artistBlock')]/div[@class='artistdiv']/span[@class='artistname']/a/text()").extract()
                #
                # Get other data ...
                #
                yield item

questionAnswers(1)

yourAnswerToTheQuestion