・ウェブスクレイピングとはにわを知りたい(再) ・美しいハーモニーを奏でるトランザクションの夕べ(仮) ・IRTかくしゃしゃりき(談)
(約20000字)
どこからともなく[3486]の続きです。
・yasuoka氏5月15日にいわく
https://srad.jp/comment/3211241
すばらしい砂袋役に徹しておられます。
17年前の2000年、「LED発車標」などと称するケッタイなフリーソフトを何かの至りでつくり始めたときにも、一通りのことはじぶんで検討しました。これ、必ず1度はじぶんで検討できないと、その後いつまでも「センセイにいわれないとわからない(問題があれば誰かが指摘してくれる)」と考えるひとになっていくだろうという懸念がありましょう。以下、きわめてセンエツながら「LED発車標」などと称するケッタイなフリーソフトその他のフリーソフト等(ひいては、このフォーラムの機能も含む)に関して、(フリーソフトについては)17年後にふり返るとどう見えるのかというようなことをまとめておきたく存じます。(きわめて手前ミソであります。)
※yasuoka氏の世代では考えもしないことかもですが、目先の状況や事件が解決すればいいんだということでなく、本人にとって学習の機会になるということを考慮しなければなりません。ひいては、事件化する前に学習の機会が得られるよう、講義に採り入れたり(副読本的な意味で)教材化していったりする責務すらあろうかと、こういうわけです。そういうことが必要になるほど社会が複雑になっているのですから、昔の感覚で「過保護だ」「大人扱いしないと育たない」とばかりもいっておられませんぞ。(個人の見解です。)
・(Windowsでいう)「インストール」を必須としておく:(会社や学校で)「インストール」を許すか許さないかはポリシーで設定できますから、本ツールを含む「インストール」を要するソフトウェアの実行が許可されているかいないかを確かめるという習慣すらないユーザーにも(何も考えずとも)ポリシーを遵守させる(何か考えて余計なことをしない限りは自動的に遵守できる)ようにしています
※「させる」という表現はメッソウではあるのですが、技術上の措置として「(否応にも)させる」というはたらきがあるという意味でございます。
・本ツールの使用を、ウェブサーバーの管理者が明示的に排除できる手段を用意する:ヘッダーでUser-Agentをきちんと名乗りますから、ほんの1行の記述で排除できます
・「User-Agent」ヘッダーです
https://developer.mozilla.org/ja/docs/Web/HTTP/Headers/User-Agent
大前提はここです。あるツールの使用の可否をエンドユーザーに判断させてはなりません。あるツールの使用が問題になるかどうかは、最終的にはウェブサーバーの管理者が個別に判断すべき事項であり(※)、問題になると判断したならば、ウェブサーバーの管理者が明示的に(ことばでの呼びかけでなく技術上の具体的な措置を尽くして)禁止しなければなりません。User-Agentを偽るソフトウェアを使うことは、ただちに不正とみなせます。
※▼エンドユーザーは判断能力がなく、▼ツールの提供者がすべての事例をあらかじめ判断することも不可能であることが明らかであるからです。だからといってツールの提供者は何もかも免れ得る(=『記載事項!』([3148])を書きさえすれば免れられる!)かといって、そんなことはないというのも当然です。
・ブラウザでの閲覧だけが明示的に許可されている⇒加工や蓄積を行なわない
※ピクシブさんがさくらのレンタルサーバ(のうち、少なくともうちのサーバーもしくはサブネット)からのアクセスを制限していらっしゃるので、このフォーラムとしてはタイトルタグのスクレイピングができない…というような一種「やりとり」が、メールの1通すらやりとりすることなく技術上の措置のみを通じて明示的に行なえているというのが、ある意味しょーじき…いえ、技術だけでコミュニケーションできている状態といえましょう。これでいいんですよ。わたしはあきらめればいいんです。それだけです。
・BASIC認証を超える方式でログインを求めるページに対しては、より慎重でなければならない(本人確認をしている=本人が操作することを要求している)⇒POSTには対応しない
・テキストに着色していいのか⇒色を再現しないテキストブラウザや音声読み上げブラウザがある・選択状態で反転表示とするOSのUIは受け入れられている(そういうものだという了解のもと、HTMLで書かれWebで公開されているとみなされる)⇒うーん(※グレーではあると認識しています)
※このフォーラムの現在のスタイルシートでは「緑字で「グレー」と書いてある!」状態になって、…なんだかなぁ。意図的に緑字にするつもりで、意味的には箇条書きではないのに箇条書きの体裁で書いてある箇所もあるので、いまから色を変えられないし、…もっとなんだかなぁ。
・テキストの前後に任意の文字列を付加していいのか⇒ブックマーク(お気に入り)に、名前を編集して保存することが黙認されている
・さーびすふのー!:わざともっさりと「更新しています」が点滅します(実際にももっさりです)
そういう考えの積み上げの結果、ウェブブラウザで各ページを順番に見るという本来の使用法では起こりえない「各社のソレを一覧!」というのは、きわめてアウトだと結論しています。引用の要件を満たしながら人間が書いた記事の中で「アレとソレを同時に参照」(≒このフォーラムがそういうことになってます)というのは正当なソレですが、これをプログラムや機械に自動で行なわせてはいけないのです(人間がやらないといけないのです)。
※同じ問題は「Googleニュース」でも話題になりました。同じものを新興の事業者が自称「サーチエンジンだもん!(合衆国**に照らしてフェアだもん!)」といって通用するのかどうかは大いに疑問ではございます。
※翻って、このフォーラムに「ログインする」機能をつけていいのかどうかは、なお慎重に検討中でございます。セカイから都合よく切り取ってきた情報を会員向けに提供するサービス(有償か無償かを問わず、そういう役務)とみなされうる状態になってはいけない=(書き手が自分で公表した=ただちに公表したとみなされるよう)オープンでなければならないような気がするので、かなり躊躇しています。ログイン不要だけれども端末をまたがってクッキーを連携させる機能、くらいが妥当かなぁ。あっちのPCでカートに入れたらスマホでもカートに入っているんですよ…これ、なかなか面倒ですよね。ほしいものリストの逆といいましょうか、アレとコレとソレをこの順番で読めというリストをつくって送りつける機能…ぎゃふんですのう。
・「スクレイピングとAPIの違い」
https://developer.ntt.com/ja/blog/e007f5ca-292b-48b6-9fcb-e8051a1f9889
> APIはサービス提供側が一定の条件を設けた上で公開している開発者向けの機能になります。対してスクレイピングは本来はユーザ向けであるHTMLコンテンツをコンピュータに解析されるもので、公式にサポートされているものではありません。
> そのためコンピュータによって負荷を高めたり、許容されていないアクセスを行うと不正アクセス防止法違反によって処罰される可能性もあります。
> コンテンツは企業にとって生命線である場合も多く、それらのデータをまとめて抜かれてデータベース化されることを懸念する声もあります。
> スクレイピングはAPIが提供されていれば防げる行為です。スクレイピングは、それをしなければならないほど、コンテンツに魅力があるという証拠とも言えます。であれば公式としてきちんとアクセスコントロールした上でコンテンツをAPI提供する方が健全と言えるのではないでしょうか。
そもそも、カワサキ細かいスクレイピング処理をしようなどと思い立つような人というのはかなり視野が狭まっている状態にあることが多いと見受けられ(…ギクッ!)、APIがないならあきらめる、オープンデータがなければあきらめる、あるいは機能の開発が目的ならダミーデータをじぶんでつくればいいじゃない、と、そういう方法論が勉強できていない段階で、きわめてナイーブな「ものづくり(みてみて! ちゃんとうごいたよ☆つかえるよ☆たのしいよ☆彡)」の衝動的なものにとらわれているという理解ではございます。
●ウェブスクレイピングとはにわを知りたい(再)
しかし、ここで日本語版ウィキペディアを参照すると、ひどい目にあいます。
・ウィキペディア「ウェブスクレイピング」
|