
2026/07/22 21:32
Reddit が単なる HTML は非安全と判断したため
RSS: https://news.ycombinator.com/rss
要約▶
Japanese Translation:
Reddit は「Old Reddit」というフロントエンドでログインを必須にし、以前は公開アクセスされていたものを逆転させました。プラットフォーム側は、悪用されたスクレイピングと自動的なトラフィックがこの変更の理由であると指摘し、Old Reddit のプレーンな HTML は歴史的に New Reddit の JavaScript に依存したインターフェースよりもスクレイピングが容易だったことを示しました。批判者は、この正当化は不均衡であると主張しており、特に Old Reddit がデフォルトでより少ないデータしか読み込めないにもかかわらず高リスクターゲットとして扱われる一方で、New Reddit は JavaScript に依存するためスクリプトを実行せずにスクレイピングするのは困難である点を挙げています。この動きは、Firefox や NoScript を採用するなどのニッチユーザーを制限し、実際には低リスクの行動をとっているにも関わらず、大規模モデルからの抽出からユーザー生成コンテンツを保護するという業界全体の傾向を示しています。回避策(例:スクリプト選択的ブロック)は存在しますが、このポリシー変更はオープンなデータ分析に依存するツールやコミュニティに対して摩擦を生じさせています。著者は引き続きブログでアップデートを追跡し続ける予定です。
本文
企業紹介:Reddit の真実と「旧版」への回帰について
はじめに
Reddit の本質とは何か?一言で言えば、多数の人気フォーラムを運営するプラットフォームです。「猫を見て入り、共感して滞在する」というスローガン通り、多くの企業が価値を引き出す一方で、コミュニティの生態系を崩壊させないバランス感覚が必要です。
単にコミュニティ育成が目的ではなく、**人間が生み出したデータこそが LLM(大規模言語モデル)時代における「真の金鉱」**であることが重要です。過去に Reddit がコミュニティから比喩的に「肝臓」を引き抜こうとした事件についても、深く検討すべき点です。
検索結果:LLM 時代の新しい使い道
現在も Reddit に積極的に参加するわけではありませんが、LLM 時代における重要なリソースとして稀にアクセスします。検索クエリに以下の文字列を追加することで、信頼できる人間の記述を見つけられます。
site:reddit.com <検索キーワード>
私はこの方法がまだ有効だと考えています。
ログインの背景にある問題:「旧版フロントエンド」への招待
最新のバージョンでログインを試みると、以下のようなメッセージが表示されます。
「もしかするとあなたが年配者に見えているのかもしれませんね。私は旧版のフロントエンドである
を使用しています。」old.reddit.com
これほどシンプルに、デザインの選択がなぜ重要なのかを理解することは容易ではありません。しかし、これは単なる好古趣味ではなく、技術的な実情に基づく判断です。
強制離脱への抵抗
ブラウザや OS の進化に伴い、マイノリティのユーザーである私も「製品から除外される」経験を経ています。
- 古いスマートフォン: 8 年前の購入品だが現在も動作中(OS が古すぎるため)。
- タブレット: 10 年前のモデルだがバッテリー持続時間は優れており、動作も良好。
- 旧 API アプリ: Stack Exchange の API を使用していたアプリがストアから削除された苦い経験。
Reddit 側はこれを**「Reddit を安全にするため」**と主張しています。しかし、「安全」という定義の根底には以下の疑問があります。
- 私を脅かすのは、私という人間ですか?
- あるいは、知識への渇望(データの収集)でしょうか?
「悪意あるスクレイピング」という口実
Reddit の公式発表では、以下のように語られています。
「ログイン状態になっていることを願います。」 旧版 Reddit のログアウト時の体験は、プラットフォーム上での悪意あるスクレイピングおよび自動トラフィックの主要な要因となっています。
これに対し、ユーザー側からの質問と回答は以下の通りです。
| 質問 | 管理者回答の要約 (u/Nestramutat) |
|---|---|
| 新版 Reddit とは何が違うのでしょうか?なぜログアウト状態でアクセス可能なのか? 旧版にも同様の対策を導入すべきではありませんか? | 悪意あるトラフィックの形状は常に変化します。 一つの手法を禁止しても、すぐに新しい手法が開発されるため、これは常に「猫とネズミのようなゲーム」が続きます。 悪意のあるトラフィックを見つけて後で処理するのは容易ですが、予防的にブロックするのは困難です。 |
解説: 新版 Reddit に「最新のセキュリティスタック」が存在しない限り、この問題は解決しません。右クリック→Inspect Element をするだけでも、技術的ブランクは埋められます。
旧版と新版:技術比較と実測結果
旧版 Reddit (old.reddit.com
) の実態
old.reddit.comログインして確認しましたが、非常に快適です。
- HTML が中心: 基本的なコンテンツ提供は HTML で行われ、JS を非実行でも動作します。
- データ量: 約 1MB のデータをダウンロードし、その約半分(500KB)を返しています。画面表示分以外の大量のデータが含まれます。
- 読み込み速度: GitHub と比較すると約 4 倍遅いです。レスポンス待ちが整整 2 秒必要になる場合があります。レート制限の匂いがします。
- 追加コメント: ローディングは軽快で、秘密情報の漏洩はありません。単なる普通のウェブページです。
新版 Reddit (reddit.com
) の実態
reddit.com不合理な期待を持たれましたが、JavaScript を実行させずに投稿以上のコンテンツをロードすることはできません。
- データ量: 旧版に比べて約5 倍のデータをブラウザに読み込ませます。
- スクレイパー対策の実装: 全てのドメインへのリクエストをブロックし、以下の最小限のみ許可しています。
* www.redditstatic.com/js/concat * www.reddit.com/svc/shreddit/more-comments/ * www.reddit.com/svc/shreddit/comment/ - 挙動: ページ読み込み量は減少しますが、コメントのロードボタンは回転し続けます。発火したリクエストにはコメントテキストが含まれています。
実験結果:
- 再読み込みやコメントロードを繰り返しましたが、失敗はありませんでした。
- キャプチャ(CAPTCHA)フィールドが表示されたことは一度ありましたが、再現できませんでした。
- 毎回の操作で送信される「ハートビート」のようなパケットが存在し、これが何らかの防御機能になっている可能性があります。
では、どちらがより安全なのか?
フロントエンドからの安全性という概念は純粋な PR(広報)上の話であり、本質とは異なります。読み解くとこうなります: Reddit はスクレイピングされたくない(ユーザー作成コンテンツ=金鉱)と考えており、一部の利用者を犠牲にしてスクレイピングを阻害しようと信じているのです。
根本的な問題点
- スクレイピングは完全に止まりますか?
- わかりません!新版でも依然として可能ですが、難度が上がります。
- シンプルな HTML 形式の Reddit を好む軽量なスクレイパーが存在します。
- データ量の矛盾:
- 旧版:デフォルトで 200 件のコメントをロード。
- 新版:最初に 25 件のみ表示し、自動で約 35 件に増える(デフォルトでも8 倍のデータ量)。
- 皮肉: ブラウザに読み込ませる量を劇的に増やし、JS を強制させることでスクレイピングを難しくしようとする試みですが、結果として HTML コードが膨れ上がり、混沌としています。
適切な対応策
彼らが
old.reddit.com に40X または 30X エラーを返せばよかったはずです。あるいは、「誰も使っていないため削除する」と宣言すべきでした。しかし、そんなことは起きませんでした。
まとめ:どうすればよいか?
この状況を打開するために、以下の選択肢を検討してください。
- ログインする?
- 推奨: 当然のことですが、やせざるを得ない現状を嘆かせてください。
- 「新版」Reddit を使う?
- 事実: 仕方なくなるでしょう。旧版のサポートが不明確です。しかし、もし彼らが許容可能と判断すれば、ログアウト状態でのアクセスも制限するはずです。
- LLM に依存する?
- 疑問: 人々の適当な質問に対して、世界で最も高価なコンピュータに相談する必要がありますか?人間が書いたテキストを読むことに価値があるはずです。
私はこの議論を Lobste.rs に投稿しました。あるいは、私まで直接ご連絡ください。賢い皆様なら、今後どう振る舞うべきかお分かりになるでしょう。