文系プログラマによるTIPSブログ

文系プログラマ脳の私が開発現場で学んだ事やプログラミングのTIPSをまとめています。

nofollowが無いはてなスターと読者になるボタンはブラックハットSEOなのか?

思わぬところに落とし穴があるかもしれませんね。


f:id:treeapps:20170818174241p:plain

ブログを開設して以来、ほとんどはてなスターって使ってないtreeです。
スターを付けて頂いた事はあっても、付けた事は数回しかありません。

はてなブログ管理画面のアクセス解析画面で参照元が解る訳ですが、yahooが多くgoogleは少ないです。
f:id:treeapps:20140323043403p:plain
もしかしたらgoogleから軽いペナルティ喰らってるかな?と重い、ブログのリンクを調べてみました。
そこではてなスターと読者になるボタンに着目した訳ですが、こいつがどうも怪しい・・・

怪しい部分をよく見てみる

読者になるボタン

まずは読者になるボタンから。
読者になるボタンを押下すると、/aboutページに読者が表示されます。本ブログの場合は以下のようになっています。
f:id:treeapps:20140323044554p:plain
(一応モザイクかけてます)

htmlのソースを調査してみる

見易いよう整形しています。

<dl>
    <dt>ブログ名</dt>
    <dd>treeのメモ帳</dd>
    ・・・中略・・・
    <dt>読者</dt>
    <dd>
        <div class="info">
            <span class="subscription-count">15 人</span>
            <a href="http://blog.hatena.ne.jp/XXXX/"><img src="http://cdn1.www.st-hatena.com/users/we/XXXX/profile.gif" width="16" height="16" alt="XXXX" title="XXXX" class="profile-icon"/></a>
            ・・・中略・・・
            <a href="http://blog.hatena.ne.jp/XXXX/"><img src="http://cdn1.www.st-hatena.com/users/we/XXXX/profile.gif" width="16" height="16" alt="XXXX" title="XXXX" class="profile-icon"/></a>
        </div>
    </dd>
</dl>

うん。nofollowついてないな。

うわぁ・・・
これは終わっています。
ソースの表示でこうなっているので、jsではなくサーバサイドでhtmlがレンダリングされています。
何故終わっているかは次項で説明します。

はてなスター

続いてはてなスターによって生成されるリンクについてです。

htmlのソースを調査してみる
<div class="hatena-star-container">
</div>

htmlがこう描画されているので、はてなスターのリンクはjsによって後付けで描画されています。
では一応jsで生成されるhtmlも見ておきます。

jsで生成されるhtmlのソースを調査してみる
<span class="hatena-star-star-container">
    <img src="http://hatenablog.com/images/theme/star/hatena-star-add-button.png" tabindex="0" alt="Add Star" title="Add Star" class="hatena-star-add-button" style="cursor: pointer; margin: 0px 3px; padding: 0px; border: none; vertical-align: middle;">
    <a href="http://blog.hatena.ne.jp/XXXX/">
        <span class="hatena-big-star-star-container">
            <img src="http://cdn1.www.st-hatena.com/users/UD/XXXX/profile.gif" tabindex="0" class="hatena-star-user" style="padding: 0px; border: none;">
            <img src="http://s.hatena.ne.jp/images/star-green.gif" tabindex="0" class="hatena-star-star" style="padding: 0px; border: none;" alt="XXXX (green)" title="">
        </span>
    </a>
</span>

うん。nofollowついてないな。

あのさぁ・・・
という事で次項で何がマズイのかを説明します。

ちなみにはてなスターのaタグはjavascriptによって生成されたタグですが、最近のgoogleはjsで生成されたhtml要素もクロールできてしまうので、要注意です。

何が危険なの?

外部リンクの比率が上昇して低品質判定を喰らう

はてなスターって1度に3つ付けたりする謎の習慣がありますよね。
この習慣によって結構沢山の外部リンクが生成されてしまう可能性があります。
特に大規模サイトではそれが顕著です。

自分のリンクから大量に外部へリンクしていると、google先生に「このサイトなんか怪しいな。スパムブログか?」と怪しまれたり、コンテンツが少ないブログの場合「他に本命ブログがって、そっちにリンクする事でPageRankを分ける自作自演サテライトサイトかこれ?」と怪しまれたりします。

昔と違い、外部リンクは少なければ少ない程いいので、はてなスターによる無駄に大量な外部リンクは悪影響を与えます。
(nofollowが付いている場合はOKです)

自分のサイトがgoogleからペナルティを喰らう

自分のサイトから悪意のあるサイトにリンクがはられていると、自分のサイトも共犯者扱いされ、googleからペナルティを喰らいます。ペナルティは、

  • googleからインデックス削除
  • googleの検索順位が大幅に下がる

等といった処罰が下されます。

有料リンク問題

よくあるケースが、お金を払って大手サイトにリンクして貰った事がバレて大手サイトがペナルティ+インデックス削除を喰らい、お金を払った自分も同じペナルティを食らうケースです。大手サイトにリンクして貰うと大量の流入が見込め、自サイトの広告収益増大が見込めますね。それを金銭で解決してしまおう、という有料リンク問題です。

スパムリンク集問題

他にも、スパムに利用されているようなリンク集サイトにリンクしてしまったがために、同様にペナルティを受けるケースがあります。
昔から無料のリンク集ってありますよね。
このリンク集が実は危険で、このリンク集にスパム業者がリンクしていると、自分も共犯者になっちゃうんです。

aタグにnofollow属性がついていない

nofollowについては以下をご覧下さい。

nofollow が指定されたリンクの Google での処理

通常、Google は、これらのリンクをたどりません。つまり、これらのリンクの PageRank やアンカー テキストを転送しません。nofollow を使用することは、Google のウェブ全体の図式からリンクを除外することになります。ただし、他のサイトが nofollow を使用せずに対象ページにリンクしている場合や、URL がサイトマップで Google に送信されている場合、対象ページがインデックスに表示されることがあります。また、他の検索エンジンでの nofollow の処理が少し異なる場合もあります。

https://support.google.com/webmasters/answer/96569?hl=ja

この中でPageRankやアンカーテストを転送しませんという言葉に注目。
nofollowが無いとリンクしているサイトに対してページランクを渡してしまうのです。

はてなスターと読者になるの問題点はこのnofollowにあって、両者にnofollowはついていません。
つまり

  • はてなスターを付けた人のサイトにPageRankを無条件で渡してしまう
  • 読者になった人のサイトにPageRankを無条件で渡してしまう

という事になります。
しかし、善意ももってスターと読者になって頂いた方に対してPageRankを渡すのは構いません。
が、悪意を持った方に対してはどうでしょう。
悪意を持ったブロガーに両者をされると、以下のようになります。

  • 悪意を持ってスターを付けた人の共犯者になってしまう
  • 悪意を持って読者になった人の共犯者になってしまう

結果としてあなたのサイトはペナルティを受けます。
ここで問題なのは、
はてなスターと読者は削除できない
点にあります。自分で削除できないので、あなたはずっと共犯者になります。

まるでチンピラが当て逃げするような行為ですね。
流石に救済措置が無いと困るので、このリンクを拒否する事ができます。
「自分はこんなリンク知らん!無関係だからな!」と訴えるためのツールです。

リンクの否認ツール

この問題があまりに大きな問題となってしまったため、googleはリンクの否認ツールを作った程です。

Google では、第三者のサイトでの操作がウェブサイトに悪影響を及ぼさないようにすることに注意を払って取り組んでいます。場合によっては、ページやサイトについての Google の評価に参照リンクが影響を与えることがあります。たとえば、ご自身やご利用の検索エンジン最適化業者(SEO)が、有料リンクや品質に関するガイドラインに違反した他のリンク プログラムにより、サイトへの不適切なリンクを作成している場合があります。まず、ウェブから PageRank を操作する意図のある悪質なリンクや品質の低いリンクをできる限り削除することをおすすめします。

https://support.google.com/webmasters/answer/2648487?hl=ja

グレーゾーンなSEO

ここからは良いのか悪いのか一概に判断できないグレーゾーンなSEOのお話です。

はてなスターを付ける事で高ランクサイトからPageRankを分けて貰う

あなたのブログに全く関係の無いジャンルのブロガーからスターが付いた経験はありませんか?
これは、nofollowがついてない事を利用して、高いPageRankを持つサイトの被リンクを獲得し、高いPageRankを分けて貰う事で、自サイトのPageRankを上げよう、という戦略です
私はこの戦略は完全にブラックハットSEOだと思うんですけどね・・・・

ブラックハットSEOとは、SEO(検索エンジン最適化)における用語で、悪質な(非倫理的な)手法を駆使して検索結果ページ(SERP)の上位に表示させる技術または施策のことである。

ブラックハットSEOの典型的な手法としては、ユーザーに気づかれないようにWebページ内にSEO目的のキーワードを大量に埋め込んだり、ユーザーがアクセスしてきた際にWebクローラが巡回したWebページとは異なるWebページを表示させるような仕組みを埋め込んだり、コメントスパムなどの強引な手法で大量のバックリンクを獲得しようとしたりする方法がある。検索エンジンの多くはこうした手法はポリシーに反するものとしており、通常は何らかのペナルティが課されるが、悪質なWebサイトと判断されず検索結果ページの上位に表示される場合がある。

http://www.sophia-it.com/content/%E3%83%96%E3%83%A9%E3%83%83%E3%82%AF%E3%83%8F%E3%83%83%E3%83%88SEO

この戦略は前述のaタグにnofollow属性が無いからできる芸当です。
nofollowがある場合はクロールしにいかないので被リンクにならないし、PageRankも渡されないので、この戦略は無意味です。単に善意で「いいね!」したのと同じ事になります。

さて、この行為は黒でしょうか、白でしょうか。
「いやいや、そんなつもりでスター付けたんじゃないよ!たまたま関心があったから付けたんだよ!」
と言われたら、言い返せません。ちょっとグレーな戦略ですね。

「読者になる」も全く同じです。

逆SEO対策に利用して競合サイトを陥れる

逆SEOとはSEOの逆で、検索の順位を下げる事にあります。
例えば競合サイトがある事で自サイトの順位が中々上がらないとします。
もしその競合サイトが潰れたら、自サイトの広告収入が激増する事が見込めるとした場合を例にします。

  1. まず捨てアカウントでブログを作ります。
  2. 続いてそのブログでスパムリンク集サイトにリンクしまくる、悪質なサイトにリンクしまくる等をします。
  3. 続いて捨てブログから競合サイトにはてなスターを大量に付け、読者になります。
  4. 暫くするとgoogleから捨てブログにペナルティが下されます。
  5. 更に巻き添えを食らうかのように、競合サイトもペナルティが下されます
  6. これで競合サイトを蹴落とし、自サイトの順位アップ!

こんな感じで競合サイトに対して逆SEOアタックをしかける事が可能です。
但し、この行為がgoogleにバレたら永遠にブラックリスト入りするかもしれないので、もしやるなら相当な覚悟を持って自己責任でやって下さい。google先生は賢いので、例えネカフェから匿名でそれをやっても、何らかの痕跡からあなたを追跡してペナルティを喰らうでしょう。
まあはてなブログでそんな行為をすると即バレてアカウントを凍結されるでしょうが、ペナルティの巻き添えを喰らう可能性は否定できません。

中の人は実は知っててnofollowを付けないんじゃないか疑惑

はてブの中の人、所謂開発者の方は実は知っててやってる可能性があります。
nofollowを付けない=PageRankを渡す事になりますが、そもそもはてなスターも読者になるボタンもはてなのサービス利用者にしかできない事です。という事は、例えその中で悪意を持った人がいたとしてもすぐバレるから、そいつのアカウントをBANすればいいじゃん!そうすれば健全なユーザの間でPageRankを与え与えられ、総合的にはてなのサービスがgoogleからの評価がアップする、という事を想定している可能性もありますね。推測ですが。

雑感

はてなブログ、結構ずさんだなあ、と思いました。
ブログの外部リンクはスパムを考慮してnofollowが基本です。
コメントスパム(コメントにaタグを書いて自サイトにリンクする事で被リンク獲得+PageRankを強奪する行為)は対応できているのですが、はてなスターと読者になるはできてませんね。

この被リンクの件はリンクする側もされる側も無意識である場合が問題です。
一生懸命ブログを運営した結果、意図せず悪意のあるサイト判定されてしまった場合、リンク先にも影響を与えてしまいます。
流石にそういった悪意の無い場合はgoogle先生は見抜いている筈(今までの記事から悪意の傾向を見ている筈)なので、まずは警告をし、期日までに修正したらペナルティ解除するよ、という対応をしてくれます。安心して下さい。

悪意がある場合はgoogleの中の人達が手動で「こいつアルゴリズムで自動ペナルティ与えないで一発NGにすっか」みたいな扱いをされる場合があります。その場合は警告無しで一気にペナルティを喰らいます。
通常のペナルティでは以下のように、まず警告メッセージが届くので、ガイドラインの説明通りに対応して再審査リクエストしましょう。

ほとんどのみなさまには、「手動によるウェブスパム対策は見つかりませんでした。」というメッセージが表示されるでしょう。Google 検索のインデックスに関する最新の分析によると、Google で確認したドメインのうちウェブスパムとして手動でインデックスから削除されるドメインは 2% にも達しません。この「手動によるウェブスパム対策は見つかりませんでした。」というメッセージが表示された場合、そのサイトにはウェブスパムであることを理由にした、検索結果からの削除など手動による対策は実施されておらず、ランキングへの直接の影響もありません。

手動によるスパム対策が実施されたごく一部のサイトについては、ウェブマスター ツールで既に通知されているはずです。通知は引き続き送信されますが、今後は手動対策ビューアで、 Google 内部のウェブスパム システムのデータをご自身で直接チェックすることもできます。ここで、例として、「ユーザー生成スパム」を理由として Google がサイトの特定のセクションに手動による対策を実施した場合、手動対策ビューアでどのように表示されるかについて紹介します:

http://googlewebmastercentral-ja.blogspot.jp/2013/08/manual-actions-viewer.html