動態網頁的Scrapy和Selenium
簡介
Selenium 和 Scrapy 的整合
整合 Selenium使用Scrapy,考慮將selenium 程式碼放置在spider 中。例如,在提供的產品蜘蛛中,一種方法是在蜘蛛中創建一個單獨的方法,用於初始化 Selenium WebDriver 並與之互動。
def setup_webdriver(self): self.driver = webdriver.Firefox() self.driver.get(self.start_urls[0])
使用 Selenium 處理分頁
設定 WebDriver 後,下一步是實現分頁和抓取動態產品清單的邏輯。以下程式碼片段示範如何使用 Selenium 處理此問題:
while True: next_button = self.driver.find_element_by_xpath('//button[@id="next_button"]') try: next_button.click() yield self.parse_current_page() except: break
在此範例中,蜘蛛迭代地找到下一個按鈕,按一下它,然後使用 Scrapy 的 parse_current_page() 方法處理目前頁面。
其他注意事項
以上是如何使用Selenium透過Scrapy抓取動態網頁?的詳細內容。更多資訊請關注PHP中文網其他相關文章!