BiggestBook 商品スクレイパー

JavaScript で描画される
オフィス用品カタログ

BiggestBook は Essendant が自社の販売店向けに運営するオンラインカタログで、事務用品、什器、テクノロジー、休憩室用品、清掃用品を扱っています。通常の HTTP クライアントで取得すると、商品が1件も含まれない 6.9KB のアプリケーションの外枠が返るだけです。このサービスはブラウザと同じようにページを読み込み、商品ごとに17列を返します。

初回のみ500行無料以降は1行 0.002ドル商品ごとに17列CSV · JSON · Excel
使い方

URLの一覧を入れると、表計算ファイルが出てくる

  1. ステップ 1プラットフォームにログインします。
  2. ステップ 2BiggestBook 商品スクレイパーを開きます。
  3. ステップ 3取得したい BiggestBook の商品URLを1行に1件ずつ貼り付けます。
  4. ステップ 4出力形式を選びます(CSV / JSON / XLSX)。
  5. ステップ 5ジョブを実行します。
  6. ステップ 6結果をダウンロードします - URLごとに1行、17列です。
このカタログが扱いにくい理由

読み取りにくいのはなぜか。

このページは文書ではなくアプリケーション

https://www.biggestbook.com を curl で取得すると、HTTP 200 とおよそ 6.9KB が返ります。中身は <base href="/ui"> と「Biggestbook Web」というタイトルを持つ Angular の外枠で、価格、SKU、カートに追加ボタンのいずれも1か所も現れません。カタログはその後 JavaScript から読み込まれます。HTTP ライブラリと HTML パーサーだけで組んだものは、この外枠を読んでページが空だと判断してしまいます。

17列、そのいくつかは対になっている

エクスポートには priceparsed_priceskusku_codeimageimagesurlproduct_url が含まれます。無意味な重複ではありません。各組の一方は表示用、もう一方は計算用で、どちらがどちらかをインポーターを書く前に把握しておけば、書き直さずに済みます。

小売店ではなく卸カタログ

BiggestBook は一般消費者ではなく販売店に向けたものなので、意味を持つ項目は購買システムが必要とするもの - 識別子、ブランド、在庫状況、通貨 - であって、マーケティングページが頼るものではありません。スキーマもそれを映しています。識別子の列が2つあり、評価とレビュー件数は存在はするものの、あることを前提にはしていません。

供給系の他サービスと同じ形

Livescraper は CDW、AutoZone、Brady、Decathlon をはじめとする一連の B2B・供給系ソースで、このスキーマを使っています。17個の名前もその順序も同一なので、インポーターは1つですべてを読めますし、2つ目のソースを追加するのは設定変更であってプロジェクトではありません。

各行が成否を伝える

最後の列は status で、サイトではなく当社のエクスポーターが書き込みます。取得できなかった行も理由を持って必ず届きます。3週間後に静かな欠落に気づくのではなく、入力リストと突き合わせられます。

測定していないことは、していないと書く

このページの根拠となる2回の実行は、どちらも 404 が返るプレースホルダーURLを送信したため、BiggestBook の商品データは一切ありません。下の列一覧は本物で、それらのエクスポートのヘッダー行そのものです。値については記述していません。1件も見ていないからです。

取得できるもの

商品ごとに17列。

このサービスの実際のエクスポートのヘッダー行から、シートの順序どおりに読み取ったものです。手元にある2回の実行はこのヘッダーの下にデータを返していないため - 表の下の注記をご覧ください - 各項目はその列が何のためにあるかを述べ、そこで止めています。

query
送信した BiggestBook のURL。多数の商品を含むエクスポートでも切り分けられるよう、各行に繰り返されます。残しておいてください。行の残りがどの入力に対する答えなのかを示す唯一の記録です。
sku_code
カタログに印字されているとおりの品番。下の sku と対になります。このスキーマ系統では両者が独立に埋まるため、結合キーを決める前に両方を確認してください。
product_url
正規の商品ページ。行が実際に生成された元のアドレスを示す url とは別物です。送信したリンクがリダイレクトすると、両者は食い違います。
name
ページに表示されているとおりの商品タイトル。
description
説明文。短いラベルではなく長い自由記述の項目だと考えて、幅の広い列かデータベースのテキスト型を割り当ててください。
parsed_price
記号も桁区切りもない数値としての価格。計算、並べ替え、しきい値判定に使うのはこちらです。
price
表示どおりの価格。カタログに何と書かれていたかを顧客にそのまま示す必要があるときに使います。計算が必要なら parsed_price を使ってください。
currency
価格が表示されている通貨。決めつけずに必ず読み取ってください。卸カタログは、別のアカウントや地域には別の通貨を出すことがあります。
availability
ページに公開されているとおりの在庫状況。リアルタイムの在庫連携ではなく、取得時点でのカタログの記載として扱ってください。
rating
ページが公開している場合の平均評価。卸カタログでは公開していないことが多いので、空欄で落ちずに受け入れられるようインポーターを書いてください。
reviews
レビュー件数。rating と同じ但し書きが付きます。両方そろっている場合は組で扱ってください。件数の裏付けのない評価は順位付けには使えません。
images
ページが持つすべての画像を1つの項目に収めたもの。素材ごとに1行必要なら、保存前に分割してください。
brand
メーカーまたはブランド。品揃えの分析でグループ化する対象はこの項目です。ある卸業者がどのメーカーを扱い、各ラインをどこまで深く揃えているかが分かります。
sku
品目番号。sku_code と組になる識別子のもう一方です。
url
その行が生成された元のアドレス。query と比べればリダイレクトが、product_url と比べれば正規化が分かります。
image
主画像を単独で持つ列。商品ごとにサムネイル1枚という一般的なケースで、文字列の分割が不要になります。
status
BiggestBook ではなく当社のエクスポーターが書き込む行ごとのフラグ。その行が取得できたかどうかを伝えます。このページの根拠となる2回の実行はどちらもここが http 404 です。送信したURLが存在しないプレースホルダーだからです。

1行あたり17列 · CSV、JSON、Excel

このページの根拠は2026年7月14日と15日の2回の実行で、そのペイロードはバイト単位で同一です。どちらも https://www.example.com/product/123 - BiggestBook のアドレスではなくプレースホルダー - を送信し、どちらも http 404 を持つ1行を返し、データ列14個はすべて空でした。つまりスキーマは確実にお伝えできますが、BiggestBook の値については何一つお伝えできず、このページはそれを取り繕っていません。この17個の名前は当社の CDW、AutoZone、Brady、Decathlon のエクスポートにも同じ順序で現れ、Decathlon の実行は66行にわたって値が入っています。スキーマが下書きではなく実際に動いていると分かるのはそのためです。

よくある使い方

卸カタログで何ができるか。

価格の追跡

1商品ではなく商品ラインを見張る

関心のある品目のURLを定期的に送信し、parsed_pricecurrency、実行日を保存します。価値は単独の数字ではなく系列にあります。メーカーが動くときはライン全体をまとめて動かすことが多く、ブラウザのタブでは見えないその動きが表なら見えます。

購買 · 価格追跡
品揃えの分析

卸業者が実際に扱っているブランドを見る

エクスポートを brand でグループ化して数えます。メーカーごとの深さから、その卸業者がどこに本腰を入れ、どこは様子見なのかが分かります。バイヤーが取引先を増やす前に立てるのと同じ問いに、カタログ自身が答えてくれます。

カテゴリー購買 · 品揃え
カタログの補完

自社データに欠けている項目を埋める

販売店の商品データベースは識別子には強く、説明文や画像には弱いのが普通です。descriptionimageimages が、すでに手元にある sku を手がかりにその空白を埋めます。撮り直しは要りません。

EC運用 · カタログ
在庫状況の確認

見積もりを出す前に把握する

見積書を送る前に、明細行の availability を読みます。リアルタイム連携ではなくカタログが公開している状態なので、警告の仕組みとして扱ってください。1か月前から在庫切れの明細を捕まえるには十分です。

営業 · 見積もり
料金

実際に使った分だけの支払い。

無料枠

最初の500行は無料

登録時に初回のみ。カード不要で、後から解約するものもありません。

登録時に初回のみ
単価

以降は1行 0.002ドル

実際に返された行数で課金されます。成功以外の status で返ってきた行は商品データの行ではないため、そのようには課金されません。

返された行数で課金
サブスクリプションなし

継続課金はありません

クレジットは月次で失効しません。作業がそういう形なら、3月にカタログを一巡させて9月まで何もしない、という使い方でかまいません。

月次の失効なし
初回の有料実行が10%オフ。お支払い時にコード LIVESCRAPER10 をご利用ください。
登録する
組み合わせると便利

別のカタログ、同じ17列

法的な話

BiggestBook のスクレイピングは合法ですか。

一般に公開されているページ上の商品情報は、ごく普通の競合情報です。注意すべき点はデータそのものではなく、アクセスと再利用にあります。

価格、商品名、ブランド、在庫状況は、販売されている品物についての事実です。どの訪問者にも配信されるページからそれを読み取ることは、バイヤーが手作業でしていることを実用的な速度で行うのと同じ行為です。17列のどこにも個人を表す情報はありません。氏名も、メールアドレスも、電話番号も、アカウントもないため、個人情報を扱うサービスで問題になるデータ保護の論点は、ここでは生じません。

はっきり述べておくべき点が2つあります。1つ目はアクセスです。BiggestBook は Essendant の販売店向けに作られており、卸カタログの一部 - とりわけアカウントごとの価格 - はログインの先にあります。当社はログインせず、他人の認証情報も使わず、有料の壁も回避しないため、このサービスが到達できる範囲は匿名の訪問者が到達できる範囲です。必要な数字が特定の販売店としてログインしたときにしか表示されないのであれば、これでは取得できません。2つ目は再利用です。説明文や商品写真は他者の著作物です。価格追跡、品揃えの分析、自社データとの突き合わせのために社内で使うことは一般的な実務ですが、自社のカタログとして公開するのは別の問いであり、答えも別です。

当社の条件は、ここにある他のサービスと同じです。一般に公開されているページのみ、ログインの先には入らず、データ層に第三者のトラッカーは置かず、エクスポートは30日後に自動削除されます。最初の500行は無料で、クレジットカードは不要です。

livescraper.app · 実行の前提
1行につき商品URL 1件
ページは取得するだけでなく描画する
匿名アクセスのみ
アカウント価格はログインの先のまま!
エクスポートは30日後に削除
卸カタログは、ログインした販売店には匿名の訪問者とは違う数字を見せます。このサービスは匿名の訪問者です。
よくある質問

登録前に寄せられる質問。

エクスポートにはどの列が含まれますか。+
17列で、順序は次のとおりです。querysku_codeproduct_urlnamedescriptionparsed_pricepricecurrencyavailabilityratingreviewsimagesbrandskuurlimagestatus。送信した商品URLごとに1行です。
このページに BiggestBook のサンプルデータはありますか。+
ありませんし、作り出すこともしません。このページの根拠となる2回の実行は、どちらも http 404 が返るプレースホルダーURLを送信したため、データ列はすべて空で返りました。それで確定できるのは17個の列名だけで、それ以上ではありません。だからこのページは各列が何のためにあるかを述べ、その値がどのようなものかは決して述べていません。
BiggestBook に単純な HTTP リクエストでは足りないのはなぜですか。+
カタログが JavaScript アプリケーションだからです。通常のクライアントで https://www.biggestbook.com を要求すると HTTP 200 とおよそ 6.9KB が返りますが、その中身は「Biggestbook Web」というタイトルと <base href="/ui"> を持つアプリケーションの外枠で、価格・SKU・カートのマークアップはどこにもありません。商品はその後に要求され描画されるため、HTML パーサーだけに頼るスクレイパーには空のページに見えます。
販売店ログインで表示されるアカウント価格は取得できますか。+
できません。当社はログインせず、他人の認証情報も使わず、有料の壁も回避しないため、このサービスが見るのは匿名の訪問者が見るものです。特定の販売店としてログインしたときにしか表示されない数字は、対象外です。
価格の列と識別子の列が2つずつあるのはなぜですか。+
各組の一方は表示用、もう一方は計算用だからです。price は表示どおりの価格、parsed_price は同じ数字を書式なしの数値にしたものです。skusku_code はこのスキーマ系統では独立に埋まるため、結合キーを決める前に両方を確認してください。同じ重複が imageimagesurlproduct_url にも当てはまります。
status の列は何を意味しますか。+
BiggestBook ではなく当社のエクスポーターが書き込むもので、その行が取得できたかどうかを伝えます。失敗した行も理由を持って届くので、後から静かな欠落に気づくのではなく、エクスポートを入力リストと突き合わせられます。このページの根拠となる2回の実行は、そこが http 404 です。
料金はいくらですか。+
最初の500行は初回のみ無料で、カードは不要です。以降は1行 0.002ドルで、実際に返された行数で課金されます。サブスクリプションはなく、クレジットの月次失効もありません。
どの形式で出力できますか。+
CSV、JSON、Excel です。17列とその順序は3形式とも同じです。

カタログを表として読む。

通常の HTTP リクエストには渡されないページから、商品ごとに17列。最初の500行は無料、以降は1行 0.002ドルです。

すぐに有効 · カード不要

BiggestBook の商品データを取得する

BiggestBook は Essendant が販売店顧客向けに運営しているオンラインカタログで、事務用品、什器、コンピューター・テクノロジー用品、休憩室用品、清掃用品を扱います。一般消費者向けの店舗ではなく卸カタログなので、役に立つ項目は購買システムが必要とするもの - 識別子、ブランド、通貨、在庫状況 - に寄っており、マーケティングページが頼るものには寄っていません。

実務上の壁は、サイトの作りにあります。通常の HTTP クライアントから https://www.biggestbook.com に要求を出すと、およそ 6.9KB の成功応答が返りますが、その中身は Angular のアプリケーションの外枠 - <base href="/ui">、「Biggestbook Web」というタイトル、スタイルシート - であり、商品のマークアップは一切ありません。価格もSKUもカートのボタンもありません。カタログはこの外枠が読み込まれた後に、JavaScript が要求して描画します。したがって HTTP ライブラリと HTML パーサーの上に組んだものは、正常なページを読みながら中に何も見つけられません。自作の BiggestBook スクレイパーが動いているように見えて空の行を返す、最も多い原因がこれです。このサービスはブラウザと同じようにページを読み込むので、何かを読み取る時点で商品はそこにあります。

エクスポートは商品URLごとに17列です。querysku_codeproduct_urlnamedescriptionparsed_pricepricecurrencyavailabilityratingreviewsimagesbrandskuurlimagestatus。このうち4組は対になっています。表示どおりの価格と計算できる価格、2つの識別子項目、主画像とすべての画像、要求したURLと正規URL。どちらの側を使うかをインポーターを書く前に決めておくことが、きれいに取り込めるか書き直しになるかの分かれ目です。同じ17個の名前が同じ順序で、当社の CDW、AutoZone、Brady、Decathlon のエクスポートを支えているので、インポーター1つで B2B・供給系のサービス群全体に対応できます。

お見せできる範囲の限界については、意図してはっきり書いています。このページの根拠となる2026年7月14日と15日の2回の実行は、どちらも BiggestBook のアドレスではなくプレースホルダーのアドレスを送信し、どちらも 404 とすべて空のデータ列で返ってきました。これはスキーマを裏づけますが - ヘッダー行は下にデータがなくても本物のヘッダー行です - BiggestBook の値については何も裏づけません。ですからこのページのどこにも、サンプル価格も商品件数も評価もありません。アクセスにも実際の限界があります。卸カタログの一部、とりわけアカウントごとの価格は販売店ログインの先にあり、このサービスはログインしません。到達できるのは匿名の訪問者が到達できる範囲です。一般に公開されているページのみ、データ層に第三者のトラッカーは置かず、エクスポートは30日後に自動削除されます。最初の500行は無料で、クレジットカードは不要です。