2019.01.31PuppeteerのスクレイピングをAsync/awaitを使って同期的に呼び出す方法です。Async/awaitについて理解できていれば普通に作れると思いますが、慣れていないと難しいと思いますので参考にしてください。)Node.jsで非同期処理を実施するAsync/awaitの基本は以下を参照してください。Node.jsで非同期処理の戻り値を利用する(Async/await)Node.jsで非同期処理の結果を処理する際にAsync/awaitを利用する方法です。想定している利用シーン具体的なコード想定している利用シーンPuppeteerはリソースを消費が激しいため貧弱な環境ではマルチタスクで実行するとサーバーがハングアップに近い状態になります。溜まったchromeプロセスをkillしていけばいいのですが、その間スクレイピングが動かなくなると困るのでPuppeteerのタスク(関数)をまとめて実行します。具体的なコードそれでは具体的なコードを交えて説明していきます。呼び出し元、呼び出し先でファイルを分けています。operateXXX関数が実際のスクレイピングを行なっている関数となります。}}(A)Puppeteerのコードをasync関数で挟みます。browser.close()で終了する箇所ですが、その箇所を待機させる必要があるので、Async関数を定義します。(B)(async()=>{をawaitで待機させます。これによりマルチスレッドで動作することを防ぎます。browser.close();で処理の終了を検知します。catchで処理が途中で止まらないように制御しておきます。さくらVPSにWebスクレイピング用途でPuppeteerアプリケーションを置いて毎日定時実行していましたが、スクレイピングの関数をマルチで実行すると動いていなかったようだったのでマルチスレッドで起動する方法を調べました。closed.Puppeteerのエラーが出た際の対処法です。Warningとなっていますが後続の処理は実行されないので対処が必要です。取引所APIドキュメントを参照してコーディングします。公式サイトのサンプルプログラムでNode.jsはありませんが、他の取引所と同じなのでそこまで難しくありません。以下のサンプルを活用してみてください。cursor(接続が破壊されました。※このページは2019/7/14に作成されました。こんにちは、ケネです。この記事ではNode.jsのライブラリPuppeteerを使って文字入力する場合の注意事項について解説します。APIで注文が失敗する場合は日次メンテナンスに注意bitFlyerでのメンテナンスについては以下の記事で解説しています。Quoineの日次メンテナンス時の挙動について簡単に解説します。コメントをキャンセルメールアドレスが公開されることはありません。*サイト次回のコメントで使用するためブラウザーに自分の名前、メールアドレス、サイトを保存する。上に表示された文字を入力してください。ホームIT・プログラミングNode.jsプロフィールケネはじめまして、ケネです。Node.jsや仮想通貨APIトレードなどの技術情報を書いています。一人でも多くの方と「自分でもできた」感覚を共有したいので、なるべくわかりやすく、実体験ベースでのブログを心がけています。技術で自分の世界を広げましょう。不明点や質問があればお気軽にコメントください。IEO英語お問い合わせホーム検索トップサイドバープロフィールケネはじめまして、ケネです。Node.jsや仮想通貨APIトレードなどの技術情報を書いています。一人でも多くの方と「自分でもできた」感覚を共有したいので、なるべくわかりやすく、実体験ベースでのブログを心がけています。技術で自分の世界を広げましょう。不明点や質問があればお気軽にコメントください。Compassを使おう(画面からの更新で作業効率アップ)2019.11.132019.12.16アーカイブ2020年1月42019年12月12019年11月32019年10月62019年9月52019年8月72019年7月92019年6月62019年5月92019年4月112019年3月102019年2月112019年1月152018年12月82018年11月1タイトルとURLをコピーしました。