2025-03-23

はてな匿名ダイアリーを非公開でブクマするbot作成方法

はてなブックマークAPIを利用して 非公開 でブックマークする方法をご説明します。

1. はてなAPI認証情報を取得

1. はてな開発者向けページ で APIキーを取得。

2. OAuthトークンを発行する。(個人用のスクリプトなら「パーソナルアクセストークン」推奨)

2. APIリクエストパラメータ

ブックマークを 非公開 にするには、APIリクエストボディに private フィールドを 1 に設定します。

エンドポイント:

POST https://bookmark.hatenaapis.com/rest/1/my/bookmark


リクエストボディ(JSON): 
{
    "url": "https://anond.hatelabo.jp/xxxxxxx",
    "comment": "自動ブックマーク",
    "private": 1
}

これで 非公開のブックマーク になります

3. Pythonスクリプト

以下のコードを実行すれば、10分以内の匿名ダイアリー記事ランダムに 非公開 でブックマークできます


import feedparser
import requests
import random
import time
from datetime import datetime, timezone, timedelta

# はてなAPI認証情報
HATENA_API_KEY = "あなたAPIキー"
HATENA_USERNAME = "あなたはてなID"

# はてな匿名ダイアリーRSS URL
RSS_URL = "https://anond.hatelabo.jp/rss"

# 10分以内の投稿を取得
def get_recent_entries():
    feed = feedparser.parse(RSS_URL)
    recent_entries = []
    now = datetime.now(timezone.utc)
    for entry in feed.entries:
        published_time = datetime(*entry.published_parsed[:6], tzinfo=timezone.utc)
        if (now - published_time) < timedelta(minutes=10):
            recent_entries.append(entry.link)
    return recent_entries

# はてなブックマークに非公開で追加
def bookmark_entry(entry_url):
    url = "https://bookmark.hatenaapis.com/rest/1/my/bookmark"
    headers = {
        "Authorization": f"Bearer {HATENA_API_KEY}",
        "Content-Type": "application/json"
    }
    payload = {
        "url": entry_url,
        "comment": "自動ブックマーク",
        "private": 1  # 非公開設定
    }
    response = requests.post(url, json=payload, headers=headers)
    return response.status_code

# メイン処理
while True:
    entries = get_recent_entries()
    if entries:
        entry = random.choice(entries)
        status = bookmark_entry(entry)
        print(f"非公開ブックマーク: {entry}, ステータス: {status}")
    time.sleep(600)  # 10分ごとに実行

4. 注意点

• 実行環境: Python 3.x が必要。requests と feedparser をインストール (pip install requests feedparser)

• 実行間隔: time.sleep(600) で10分ごとに実行

API制限: はてなAPIにはリクエスト制限があるため、短時間で大量に実行しないように注意

OAuth認証: APIキーだけでなく、OAuthトークンを使うほうがより安全

このスクリプトを実行すれば、最新の匿名ダイアリー投稿10分以内のものからランダムに選び、非公開でブックマークする ことができます

はてな匿名ダイアリーbotブクマするのは運営も認めてる行為なので、みんなでbotを使ってブクマしよう!

  • モチベーションは何? 荒らし?

    • 逆。botは合法だと運営が認めてるなら、こっちも使ってもいいよね、という理屈 みんなで使ったら流石に最終的にはbot禁止にしてくれるかなと思って botは荒らし行為でないなら、みんな...

      • よくわかってないけど、APIを非公開にさせたいってこと? 適切に利用してる人はいないのかなーと うざいbotは嫌だけどね あまりにもひどいようならそうなるんだろうけど

  • なんになるの?

  • せっかくbotでブクマするならちょうど1年前の今日のエントリをブクマしたほうがおもろくない?

記事への反応(ブックマークコメント)

ログイン ユーザー登録
ようこそ ゲスト さん