自己責任でご利用ください。規約等の問い合わせは、直接サービス提供会社にお問い合わせください。
3user目、5user目に狙ったかのようにセルクマするブロガーを見かけるのですが、毎回大変だなぁと思っていました。しかしよく考えてみると、手動では毎回というのは厳しいのではないか?ということでPHPなどのスクリプトで自動でブックマークしているのではないか?ということで、PHPでブックマークするスクリプトを作ってみました。
はてなブックマークには、メール投稿という機能が用意されている
はてなブックマークの設定 → メールから、あなた用のメールアドレスにメールを送信することで、はてなブックマークへの追加が可能です。
たとえば携帯でWebを閲覧中に気になるページを発見してブックマークしておきたい場合、お使いの携帯が「URL(アドレス)をメールで送信」機能があれば、あなた用のメールアドレスにメールを送るだけでブックマークできます。
ブックマークを投稿する - はてなブックマークヘルプ
http://URL/
[タグ]コメント
メールではてなブックマークに追加できる機能をリリースしました - はてなブックマーク日記 - 機能変更、お知らせなど
APIもありますが、メール投稿するのが一番簡単だと思います。PHPでメール送信すればブックマークできてしまうということですね。
はてぶの一覧は、RSS取得が出来ます
http://b.hatena.ne.jp/entrylist?users=2&mode=rss&url=http://www.hatena.ne.jphttp://www.hatena.ne.jpにつけられた、はてぶ数2以上のものは上記のようなURLで取得可能です。
PHPで実装してみましょう
<?php
//----------------------------
// 自身のブログ用に書き換える
//----------------------------
//ブログTOPのURL
define("MY_SITE","http://blog.example.com/");
//はてぶ投稿メール
define("HATEBU_MAIL","書き換え@b.hatena.ne.jp");
//メールの送信元
define("MAIL_FROM","example@gmail.com");
//はてぶ数
define("HATEBU_CT", 2);
//-----------------------------
// ブックマークする
//-----------------------------
function hatena_bookmark($url){
mb_language("Japanese");
mb_internal_encoding("UTF-8");
$to = HATEBU_MAIL;
$subject = 'はてなブックマーク';
$message = $url.' セルクマ';
$message = $url;
$headers = 'From: '.MAIL_FROM . "\r\n";
mb_send_mail($to, $subject, $message, $headers);
}
//-----------------------------
// MAIN
//-----------------------------
//UAを指定しないと取得できなくなった
//$rss = simplexml_load_file($rss_url);
$rss_url = "http://b.hatena.ne.jp/entrylist?users=2&mode=rss&url=".MY_SITE;
$context = stream_context_create(array('http'=>array('user_agent'=>'Mozilla/5.0 (Windows NT 6.3; WOW64; Trident/7.0; Touch; .NET4.0E; .NET4.0C; .NET CLR 3.5.30729; .NET CLR 2.0.50727; .NET CLR 3.0.30729; Tablet PC 2.0; rv:11.0) like Gecko'))); //Edge
$data = file_get_contents($rss_url, false, $context);
$rss = simplexml_load_string($data);
foreach($rss->item as $item){
$title = $item->title;
$link = $item->link;
$count = $item->children( 'hatena' , true )->bookmarkcount ;
//echo $count."|".$title."|".$link."<br/>";
//2userならはてぶする
if($count == HATEBU_CT){
hatena_bookmark($link);
//echo $count."|".$title."|".$link."<br/>";
}
}
「自身のブログ用に書き換える」部分を書き換えてください。
レンタルサーバーのcronなどで、定期的に呼び出せば、たぶんOKです。
define("HATEBU_CT", 4);
5user目にセルクマしたい場合は、上記のように書き換えるとOK。simplexml_load_fileを使えない理由
・はてなブックマークの RSS を Ruby で取得していたのですが、こ… - 人力検索はてなUAを送信しないと、RSSを取得できなくなったようだ。
補足
2008年・株式会社はてなの回答「単に宣伝ページをブックマークする行為やメモ目的のセルフブックマークは宣伝とは判断しない」 - ラージアイ・イレブン
2011年
・はてなブックマークにおいて、セルフブックマークはOKだそうです | ブログ運営のためのブログ運営
2013年
1件は禁止じゃないです / “セルクマしたら怒られた話” http://t.co/YEn5uZLGb0
— 近藤淳也 (@jkondo) 2013年6月17日
スポンサーリンク
コメントを残す