selenium phantomjs не может отобразить страницу через js

#selenium #scrapy #phantomjs

#селен #scrapy #phantomjs

Вопрос:

Я использую scrapy selenium phantomjs для получения данных из Интернета, в котором есть javascript, загружающий данные. Когда я использую chrome. это работает хорошо, но когда я меняю браузер на phantomjs, он не может работать (не удается загрузить данные с помощью javascript). Вот код (платформа Windows 7):

 class MyCustomDownloaderMiddleware(object):

    def __init__(self):
        #self.driver = webdriver.Chrome()
        self.driver = webdriver.PhantomJS()

    def process_request(self, request, spider):

        if r"http://wenshu.court.gov.cn/list/list/?sorttype=1amp;conditions=searchWord QWJS   全文检索:成都银行股份有限公司" == request.url:

            self.driver.get(request.url)

            try:
                element = WebDriverWait(self.driver, 20).until(EC.presence_of_element_located((By.CLASS_NAME, "dataItem")))
                body = self.driver.page_source
                return HtmlResponse(self.driver.current_url, body=body, encoding='utf-8', request=request)
            except:
                body = self.driver.page_source
                return HtmlResponse(self.driver.current_url, body=body, encoding='utf-8', request=request)
        else:
            pass

    def __del__(self):
        self.driver.quit()
  

Комментарии:

1. Что происходит на самом деле? WebDriverWait ожидает появления какого-либо элемента, истекло ли время ожидания?

2. да, время истекло, и я получил ответ исходного html-кода без данных, которые должны быть загружены javascrpit