ぽっぺんしゃんにょろりんこ

匿名・非追跡型アダルト動画検索エンジンの設計ノート

Puppeteer

LLM翻訳APIを支えるプロセスマネジメント構成:PM2とDockerの棲み分け

こんにちは、にょろりんこの備忘録技術ブログです。 最近、自分で構築・運用している翻訳システムの安定性がようやく落ち着いてきたので、そのエコシステム構成について記録しておこうと思います。 使っているのは、MythoMaxベースのLLM翻訳サーバー、Node.j…

PuppeteerとNode.jsで自動クロール。動的・静的ウェブページのURLを抽出するというお話

こんにちは、にょろりんこの備忘録的技術ブログです。 今回は、自作クローラシリーズの中核ともいえる「URL収集ロジック」について紹介してみようと思います。 静的なHTMLページはもちろん、JavaScriptでリンクが後から描画される動的ページ(SPAなど)にも…

Node.js + Puppeteerでサムネイル画像を動画ページから抽出するという話

こんにちは、にょろりんこの備忘録的技術ブログです。 今回は、動画ページから最適なサムネイル画像URLを抽出するためのモジュール、fetch-image.js をご紹介します。 これは、私が開発・運用しているポルノ動画検索エンジン「Sae-Porns」の中でも、ユーザー…

Node.js + Puppeteer で動画タイトルをなるべく正確に取得する方法

こんにちは、にょろりんこの備忘録ブログです。 今日は Sae-Porns の中でも地味だけど重要な処理──動画ページのタイトルをなるべく正確に取得する仕組みについて解説します。 今回取り上げるのは、以下のモジュールです: async function fetchTitle(page) {…

Node.js + Puppeteerで不要リソースをブロックし、軽量&安全にページを取得するという話

こんにちは、にょろりんこ的、備忘録技術ブログです。 以前に「インデックスする必要のないページは最初から開かない」という話をしましたが、今回は逆に「開いたページでも、いらないものは一切読み込まない」という話です。 関連記事 pop-ancient.hatenabl…