Andy
Распакуй, внутри index.js с примером с сайта и чистый package.json с type: module. Внутри каталога выполни: npm i node index.js
вобщем создал заново пекедж добавил вверху { "name": "0014", "version": "1.0.0", "lockfileVersion": 3, "main": "index.js", "type": "module", "packages": { "": { "name": "0014", "version": "1.0.0", "license": "ISC", "dependencies": { "puppeteer": "^19.11.1" }
Andy
и запустил индекс джс с импортом
Andy
пишет что ненаходит браузер
Andy
точнее запустить его не может
Andy
вот
Yura
npm i создает новый пекедж лок
Он и должен его создать, и установить сам puppeteer.
Yura
пишет что ненаходит браузер
Ну так модули-то нужно установить, через npm i.
Andy
Он и должен его создать, и установить сам puppeteer.
ну создает, но не запускается браузер
Yura
ну создает, но не запускается браузер
Установка модулей нормально прошла? Внутри node_modules есть пакет puppeteer?
Andy
Andy
Странный у тебя package.json. Откуда это?
из вновь созданного добавил просто туда тайп модуль
Yura
из вновь созданного добавил просто туда тайп модуль
Нет, по дефолту не такой файл создаётся. У тебя там откуда-то свойство packages: {} и в нём вложенный объект. Используй тот, что я скинул.
Andy
в пакедж джсон добавляю. лок появлятся если инициализировать пекедж при уже созданном
Yura
в пакедж джсон добавляю. лок появлятся если инициализировать пекедж при уже созданном
Я так понял ты сразу пытаешься в свой пакет что-то скопировать, попробуй для начала запустить тот код что я скинул, это минимально рабочий проект. И если будут ошибки, то кидай сюда. Тот код должен работать без изменений. Нужно только запустить npm i.
Yura
так  npm i создасть package-lock.json отдельно
Он и должен его создать. Почему ты считаешь это проблемой?
Yura
Конфигурация задаётся в package.json, а package-lock.json создаётся npm-ом во время установки пакетов.
Yura
А npm i установит пакеты, перечисленные в dependencies.
Andy
Конфигурация задаётся в package.json, а package-lock.json создаётся npm-ом во время установки пакетов.
ну я так понял package-lock.json ни в чем не участвует, а только package.json или это не так?
Yura
ну я так понял package-lock.json ни в чем не участвует, а только package.json или это не так?
Он нужен для фиксации зависимостей при установке/обновлении пакетов.
Yura
package.json - конфигурация, только его нужно менять. package-lock.json - автоматически генерируется, в нём ничего менять не нужно.
Yura
https://docs.npmjs.com/cli/v9/configuring-npm
Yura
вот, сделал точно как ты писал
Не знаю как в винде хранятся кэшированные версии, попробуй удалить все старые версии для начала: C:\User\Administrator\.cache\puppeteer и так же полностью удали каталог node_modules внутри проекта. И потом снова запусти npm i.
Yura
а как без node_modules оно будет работать? если удалить его
Удалить чтобы точно не осталось старых версий, после этого заново запустишь npm i.
Yura
вот, сделал точно как ты писал
Тут видно что он почему-то пытается запустить версию win32-1108766, хотя сейчас последняя версия 112.0.5614.0 и на линуксе это 64-битная.
Andy
отсюда же должен хромиум запускаться тоже?
Yura
отсюда же должен хромиум запускаться тоже?
Я не знаю где в виндоус он должен храниться, возможно это старая версия закэширована. Поэтому и предлагаю удалить её.
Yura
Если она там нужна, то он её заново скачает.
Andy
все новое
Yura
та я винду только что на сервере поменял
У меня сейчас нет винды чтобы проверить, так что самый простой вариант это удалить все старые версии и поставить заново.
Andy
пробую удалил хром и модули
Yura
нет, то же самое
Покажи вывод команд: npm --version node --version
Yura
нет, то же самое
А puppeteer так же в win32-1108766 находится?
Andy
PS C:\Users\Administrator\twi> npm --version 9.5.1 PS C:\Users\Administrator\twi> node --version v18.16.0
Yura
да
Попробуй тогда: npm cache clean --force npm install -S puppeteer
Yura
Вроде бы похожая проблема https://github.com/puppeteer/puppeteer/issues/9533.
Andy
Попробуй тогда: npm cache clean --force npm install -S puppeteer
думаю нужно как-то найти старый хромиум и поставить его
Andy
типа система и хром не подходят друг другу
Andy
Не помогло такое решение?
еще не закинул старую версию
Yura
Попробуй тогда: npm cache clean --force npm install -S puppeteer
Вот это стоит попробовать, некоторым помогло с такой проблемой.
Andy
Не помогло такое решение?
блин. запустилось на браузере 11 года
Andy
жесть
Yura
блин. запустилось на браузере 11 года
У человека выше запустилось со свежим браузером, как я понял. Так же на server 2012.
Yura
А потом установить заново
Можешь посмотреть какая версия самого пакет puppeteer у тебя и какую версию хрома он выкачал?
Andy
вот здесь скачал и закинул в кеш
Andy
https://commondatastorage.googleapis.com/chromium-browser-continuous/index.html?prefix=Win/82287/
Yura
вот здесь скачал и закинул в кеш
Ну это понятно, но ты можешь взять свежую версию, которую удалось ему установить. Возможно конкретно в той версии, которую ты до этого пытался ставить была проблема.
Yura
Подождём ответа.
Yura
так он же наверное скачивал последнюю версию
Ну так если у вас одинаковая система, то у тебя должно всё так же поставиться.
Yura
так он же наверное скачивал последнюю версию
Ставится та версия, которая указана в package.json, у него может быть зафиксирована какая-то чуть более старая версия, а не самая свежая.
Yura
Ты можешь вручную выбрать другую версию, и заново запустить npm install puppeteer, и он поставит её. Не обязательно брать настолько старую как у тебя сейчас.
Yura
Ну или просто выполнить: npm install puppeteer@<VERSION>
Yura
Вот тут посмотри более старые версии и выбери что-нибудь. Или подожди когда человек ответит какая у него версия.
Andy
а там нельзя загрузить те что старее 5 месяцев?
Yura
5 месячную сейчас попробую поставить
Поставил win server 2012, на последней версии была ошибка как у тебя. Установил 19.4.0 и заработало.
Павел
Щас уже не могу посмотреть, но версия пупитира была 19.11.1
Yura
5 месячную сейчас попробую поставить
Самая свежая версия, которую удалось запустить (все что выше у меня не заработали): npm install puppeteer@19.5.2
Andy
Спасибо
Andy
Намучался