Скрипт Lua хорошо работает в Chrome, но не копирует данные в интерпретаторе - PullRequest
0 голосов
/ 04 октября 2019

Скрипт lua, который я написал, работает в chrome, используя splash, и он успешно получает html () страницы, но я запускаю этот скрипт в pycharm, он не удаляет какие-либо данные, хотя и не отображает никаких ошибок. Это для сайта https://www.daraz.pk/smartphones/

Попробовал изменить селекторы css кнопки, но не повезло.

Скрипт Lua:

function main(splash, args)
    assert(splash:go(args.url))
    assert(splash:wait(10.0))
    treat=require('treat')
    result = {}
    for i=1,68,1
    do  
        assert(splash:runjs("document.querySelector('.ant-pagination-next .ant-pagination-item-link').click()"))
        assert(splash:wait(10.0))
        result[i]=splash:html()


    end  
    return treat.as_array(result)
end

Это метод start_request: def start_requests (self): url = 'https://www.daraz.pk/smartphones/'

        yield SplashRequest(url=url, callback=self.parse, endpoint='execute',
                            args={'wait': 0.5, 'lua_source': self.script, 'timeout': 3600})

и, наконец, метод синтаксического анализа:

    def parse(self, response):
        for page in response.text:
            sel = Selector(text=page)
            for phone in sel.xpath('//div[@class="c2prKC"]'):
                yield {
                    'Name': phone.xpath('.//div[@class="c16H9d"]/a/text()').extract(),
                    'Price': phone.xpath('.//span[@class="c13VH6"]/text()').extract(),
                    'old_price': phone.xpath('.//del[@class="c13VH6"]/text()').extract(),

                }

какие-либо предложения о том, как это сделать?

...