1
私は、SeleniumとPhantomJSを使ってウェブサイトの動的コンテンツを取得しようとしています。ここで、私はdriver = webdriver.Chrome()
と私のスクリプトをしようとすると私のコードは、Selenium + PhantomJS in Scrapy
class judge(Spider):
name = "judge"
start_urls = ["http://wenshu.court.gov.cn/List/List?sorttype=1&conditions=searchWord+2+AJLX++%E6%A1%88%E4%BB%B6%E7%B1%BB%E5%9E%8B:%E6%B0%91%E4%BA%8B%E6%A1%88%E4%BB%B6"]
def init_driver(self):
driver = webdriver.Chrome()
return driver
def parse(self,response):
driver = self.init_driver()
driver.get(self.start_urls[0])
sel = Selector(text=driver.page_source)
self.logger.info(u'---------------Parsing----------------')
print sel.xpath("//div[@class='dataItem'][1]/table/tbody/tr[1]/td/div[@class='wstitle']/a/text()").extract()
self.logger.info(u'---------------success----------------')
だsel.xpath( "// divの[クラス@ =『データ項目』]所望のコンテンツを提供し、すべてが正常に動作します。しかし、私は代わりにdriver = webdriver.PhantomJS()
を使用する場合WebDriverWaitをdriver.get()
の後に使用して、ページが完全にロードされるようにしようとしましたが、動作しません。
ファンタムiを確認するためにファントムを使用している間にスクリーンショットを撮ろうとしましたか実際に動的コンテンツに読み込まれていますか? –
私は 'response.page_source'でレスポンスをチェックしました。ファントムは動的コンテンツをロードしていないようです。私は何が間違っているのか分かりません.... –
@Y_KLそれを並べ替えることができました – Volatil3