Pyppeteer SetCookie выпуск
Когда я использую pyppeteer с файлами cookie, возникает следующее исключение
Файл "test.py", строка 33, в asyncio.get_event_loop(). Run_until_complete(main())
Файл "/usr/local/python3.6/lib/python3.6/asyncio/base_events.py", строка 468, в run_until_complete, возвращает future.result()
Файл "test.py", строка 25, в главной странице ожидающих страниц.setCookie(файлы cookie)
Файл "/usr/local/python3.6/lib/python3.6/site-packages/pyppeteer/page.py", строка 392, в setCookie, ожидают self.deleteCookie(*items)
Файл "/usr/local/python3.6/lib/python3.6/site-packages/pyppeteer/page.py", строка 373, в deleteCookie await self._client.send('Network.deleteCookies', item)
Файл "/usr/local/python3.6/lib/python3.6/site-packages/pyppeteer/connection.py", строка 200, в обратном вызове send return await callback
pyppeteer.errors.NetworkError: Ошибка протокола: неверное имя параметра: ожидается строковое значение
Мой код указан:
async def main():
cookies = {'name': "", 'name2': ""} # just a example
browser = await launch({"executablePath": "/usr/bin/google-chrome-stable"}, args=['--no-sandbox'], headless=True)
page = await browser.newPage()
await page.setCookie(cookies)
print('after set cookie')
response = await page.goto('http://example.com/', timeout=100000)
print('before screenshot')
await page.screenshot({'path': '/tmp/tmp.png', 'quality': 100, 'fullPage': True})
await browser.close()
asyncio.get_event_loop().run_until_complete(main())
1 ответ
Согласно проекту github: https://github.com/miyakogi/pyppeteer/issues/94
Добавление {'url': "your url", 'name': "", 'value': ""} может решить проблему.