При попытке очистить результаты поиска по linkedin с помощью марионетки я заметил, что на странице результатов поиска отображается пустое поле. После расследования я заметил в консоли разработчика внутри Chromium, запущенного кукловодом эту ошибку:
Error while processing route: search.results.people Unexpected token % in JSON at position 0 SyntaxError: Unexpected token % in JSON at position 0
at JSON.parse (<anonymous>)
at u.s._deserializeQueryParam (https://static-exp1.licdn.com/sc/h/br/6n33815bd6sdo077qodh7watx:3028:140)
....
6n33815bd6sdo077qodh7watx:3028 Uncaught (in promise) SyntaxError: Unexpected token % in JSON at position 0
at JSON.parse (<anonymous>)
at u.s._deserializeQueryParam (6n33815bd6sdo077qodh7watx:3028)
....
Эта ошибка не возникает, если я запускаю Chrome вручную и загружаю тот же URL-адрес поиска.
Это мешает загрузке результатов поиска
Есть идеи?
К вашему сведению Видео, объясняющее это: https://www.youtube.com/watch?v=GYhrDWLJJ9o
Действия по воспроизведению
Расскажите нам о своей среде:
- Версия Puppeteer: последняя (v4.0.0)
- Версия платформы / ОС: Ubuntu 18.04 LTS
- URL-адреса (если применимо): поиск по linkedin (здесь пример url ) - вам необходимо войти в свою учетную запись linkedin, чтобы установить файлы cookie
- Node.js версия: v13.13.0. NPM версия 6.14.4
Какие шаги позволят воспроизвести проблему?
const browser = await puppeteer.launch({
"ignoreHTTPSErrors": true,
"headless" : false,
"args" :[
'--ignore-certificate-errors',
'--no-sandbox',
'--disable-gpu',
'--start-maximized',
'--disable-setuid-sandbox',
'--disable-dev-shm-usage',
`--window-size=1200,800`,
'--user-agent=Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/80.0.3987.87 Safari/537.36',
]});
let page = await browser.newPage();
await page.setViewport({"width": c["width"],"height": c["height"]});
await page.setUserAgent(c["user_agent"]);
await page.goto(c["url"])
(где c ["url"] - ссылка выше )
Консоль разработчика на Chrome имеет этот вывод, который влияет на страницу от рендеринга чего-либо:
Error while processing route: search.results.people Unexpected token % in JSON at position 0 SyntaxError: Unexpected token % in JSON at position 0
at JSON.parse (<anonymous>)
at u.s._deserializeQueryParam (https://static-exp1.licdn.com/sc/h/br/6n33815bd6sdo077qodh7watx:3028:140)
....
6n33815bd6sdo077qodh7watx:3028 Uncaught (in promise) SyntaxError: Unexpected token % in JSON at position 0
at JSON.parse (<anonymous>)
at u.s._deserializeQueryParam (6n33815bd6sdo077qodh7watx:3028)
....
Я пробовал обновить хром до последней версии. Ничего.
Также пробовал chrome, установив исполняемый путь. Как ни странно, эта ошибка появляется только при прохождении кукловода, но не когда я вручную запускаю браузер и go по тому же URL-адресу.
Каков ожидаемый результат? Ожидаемый результат не соответствует ' не показывать вообще. Ожидаемая страница будет отображаться, если вы просто вручную откроете браузер и go по URL-адресу, как указано выше.
Что произойдет вместо этого?
Страница не показывает результатов поиска.