Linux に puppeteer をインストールするときに、次の問題が発生する可能性があります。この記事では、この難問から抜け出す方法を説明します。
puppeteer を正常にインストールし、実際にスクリーンショットを撮ったプロセスは次のとおりです。 1. nodejsとnpmをインストールする # ダウンロードして解凍します wget -c https://nodejs.org/dist/v8.9.1/node-v8.9.1-linux-x64.tar.xz tar -xvf ノード-v8.9.1-linux-x64.tar.xz # 移動と名前の変更(オプション) mv ノード-v8.9.1-linux-x64 /www/nodejs # ソフトリンク(ショートカット)を作成します。前の手順の名前が異なる場合は、実際の状況に応じてこの手順の下線部分を調整してください。ln -s /www/nodejs/bin/node /usr/local/bin/node ローカルの Node.js ディレクトリに npm と入力し、 2. クロムをインストールする
3. puppeteer-core をインストールします (puppeteer を直接インストールすると、chromium をダウンロードできないためエラーが発生します) 4. 新しいa.jsを作成する 'puppeteer-core' が必要です。 (非同期() => { const browser = puppeteer.launch({ 実行可能パス: '/usr/bin/chromium-browser', 引数:["--no-sandbox"] }); const page = browser.newPage() を待機します。 page.goto('https://www.baidu.com') を待機します。 page.screenshot({path: 'example.png'}); を待ちます。 ブラウザを閉じるのを待ちます。 })(); このステップのコードは、インターネット上のものとは異なる場合があります。1つは、requireのコードがpuppeteerではなくpuppeteer-coreであることです。これは、puppeteerではなくpuppeteer-coreをインストールしたためです。 もう1つは、起動時に2つのパラメータがあることです。最初のパラメータは、Puppeteerを直接インストールしていないため、パスを指定する必要があります。2番目のパラメータは、Chromiumの制限によるもので、ルートアカウントで実行するためにこのパラメータを追加する必要があります。 5. a.jsを実行する
実行後、example.pngが表示されます。 注意: ページに中国語が含まれている場合、中国語フォントがないため正しく表示されない可能性があります。解決策は、コンピュータ上の c:/windows/fonts にある中国語フォントをサーバーの /usr/share/fonts/chinese に直接アップロードすることです (デフォルトでは中国語ディレクトリがないため、自分で作成できます)。 : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : Puppeter 関連ドキュメント https://pptr.dev/ 要約する 以上、Linux(centos)でpuppeteerを使ってWebページのスクリーンショット機能を実現する方法についてご紹介しました。参考になれば幸いです。 以下もご興味があるかもしれません:
|
最近のプロジェクトでは、ポイントを集める効果を作成する必要があります。 ボスの説明によると、この効果...
今日は、Windows 10 で Linux サブシステムを有効にする方法を紹介します。早速、手順を...
リンク上の点線のボックスを削除しますコードをコピーコードは次のとおりです。 a:アクティブ、a:フォ...
目次はじめにNginx Dockerファイル新しい会議もっと参考文献はじめに最近、アプリケーションの...
目次概要型アサーション構文ではインスタンスオブ構文typeof構文要約する概要TypeScript ...
<div id="ルート"> <h2>頑張れ、{{na...
table1 に 5 つのレコードを挿入する場合、次のコードは誤りです。 テーブル1に(id,na...
目次1. プロジェクトの構築2. Vue3 体験 + Vant 紹介2020年9月18日にvue.j...
目次1. 技術概要2. 技術的な詳細1. インターフェースからバックエンドデータを取得する2. フロ...
テスト環境は、JDBCドライバを使用してMariaDB 5.7でセットアップされています。 <...
1. TEXTとBLOBの違いTEXT ファミリと BLOB ファミリの唯一の違いは、BLOB 型は...
プロジェクトを実行すると、リアルタイム更新、広告アニメーションの連続表示などの要件に遭遇することは避...
このケースはCentOS 7システムに基づいていますDockerの使用経験がある人に適していますLi...
コマンド: mysqlhotcopyこのコマンドは、ファイルをコピーする前にテーブルをロックし、不完...
目次発見: ディスプレイアニメーションの応用実装:記事の1行目を表示する効果を実現する方法実際、その...