QR Send

スマホとPCのChrome間で、URLやテキストをQRコード1回のペアリングで送り合える自作Chrome拡張。アカウント不要・無料。

使ってみる →

TECH BLOG — SCRAPING & AUTOMATION

ruby + selenium webdriver の tips を中心に、
自動化・スクレイピングの実践知を発信。

現場で踏んだエラーと、その回避パターンを具体的なコードで残しています。

QR Send
MY PROJECT

スマホとPCのChrome間で、URLやテキストをQRコード1回のペアリングで送り合える自作Chrome拡張。アカウント不要・無料。

使ってみる →
Selenium・自動化

Playwright テスト実行オプション(CLI)完全リファレンス【初心者向け・保存版】

npx playwright test実行時に使えるCLIオプションを一望できる保存版リファレンスです。「あのオプション何だっけ」となったときに戻ってこられるよう、デバッグ・絞り込み・並列実行・タイムアウト・レポート・スナップショットまでをカテゴリ別の早見表と実行例でまとめました。
Selenium・自動化

Playwright の expect マッチャー完全リファレンス【初心者向け・保存版】

Playwright(TypeScript)のexpectで使えるアサーション(マッチャー)を全部まとめた保存版リファレンスです。「この場面ではどれを使えばいいか」が早見表と具体例ですぐ分かるように、LocatorAssertions・PageAssertions・APIResponseAssertions・汎用マッチャー・修飾子までを網羅しました。
Selenium・自動化

【超初心者向け】Playwright + TypeScriptチュートリアル:環境構築からブラウザ自動操作まで一歩ずつ

Playwright(ブラウザ自動操作ツール)とTypeScriptを使ったブラウザ自動化を、プログラミングほぼ未経験の方向けに環境構築から一歩ずつ解説する超入門チュートリアルです。コードはすべてコピペでそのまま動きます。
個人開発

作ったChrome拡張をChromeウェブストアで公開するまで(Manifest V3・審査を通すコツ)

Chrome拡張を作ってからChromeウェブストアに公開するまでの流れを、manifest.jsonの必須項目・権限の絞り方・審査で弾かれやすい点を中心に実体験ベースでまとめました。
個人開発

Cloudflare Pagesで静的サイトを無料で公開する(独自ドメイン・HTTPSまで)

個人開発の成果物を無料で公開したくてCloudflare Pagesを使いました。wranglerでのデプロイ手順、独自ドメイン・HTTPSの設定、更新フローまで、実際にqrsend.appで運用している構成を紹介します。
Selenium・自動化

「一度動いても壊れる」Seleniumスクレイパーを安定運用するための設計チェックリスト

Seleniumスクレイパーは手元で1回動かせても、運用を続けるうちに待機・クリック・要素参照・ドライバ障害・長時間実行・ログ・サイト追加・定期実行のどこかで必ず壊れます。安定運用のために事前に潰しておきたい8つの設計観点をチェックリストとしてまとめます。
Selenium・自動化

Ruby+Seleniumでよく出るエラーと対処法まとめ(保存版)

Ruby+Seleniumの自動化でよく出るエラーを症状別に整理し、原因と対処の要点を簡潔にまとめた索引記事。各エラーの詳細解説記事へのリンク付き。
Selenium・自動化

Seleniumでテーブル(表)データを抽出してCSVに保存する定石(Ruby)

Seleniumで表形式のデータをtable要素から抽出し、ヘッダーと本文行を分けて正規化したうえでCSVへ安全に書き出す手順をRubyコード付きで解説します。
Selenium・自動化

Seleniumで見えているのに見つからない要素の正体:Shadow DOM内を操作する(Ruby)

Seleniumで「要素は見えているのにfind_elementで見つからない」の原因の多くはShadow DOMです。shadow_rootでの取得方法、ネストした場合の辿り方、execute_scriptでのフォールバックまでRubyコード付きで解説します。
Selenium・自動化

Seleniumで壊れにくいロケータを設計する:絶対XPathをやめて変更に強い要素指定に

SeleniumのロケータをDevToolsコピペの絶対XPathやハッシュ化class名に頼らず、data-*属性・テキスト関係・複数条件・定数集約で変更に強く設計する方法をRubyで解説します。