
OsintgramはInstagram上のOSINTツールです。任意のユーザーのInstagramアカウントをニックネームで分析するためのインタラクティブシェルを提供します。
Instagramアカウントを指定して、その背後にいる人物を突き止めましょう。 Osintgramは、 公開プロフィールから得られるあらゆる情報 — フォロワー、キャプション、ハッシュタグ、 位置情報が付与された場所、投稿の習慣、公開されている連絡先 — を収集し、相互参照し、 あなた自身のマシン上で動くWebインターフェース上に整理して表示します。
平易な言葉で質問すれば、ローカルAIモデルがどの検索を実行すべきかを判断します。 あるいはそうせずに、コマンドを自分で選んでモデルを完全にスキップすることもできます。
コマンドだけでなく、質問に答えます。 「フォロワーは何人いて、最もよく使う ハッシュタグはどれですか?」 と尋ねれば、3つの検索を実行し、文章による回答を返します — さらにその下に生の結果も表示されるので、文章を鵜呑みにせずに作業内容を確認できます。
検索そのものを除いて、何もあなたのマシンから出ていきません。 AIは
Ollamaを通じてローカルで動作します: OpenAIキーも、サブスクリプションも、
あなたのプロンプトが誰かに送信されることもありません。インターフェースは127.0.0.1から
配信されます。
実行する前に、検索にかかるコストを教えてくれます。 Instagramのデータは 無料ではなく、ほとんどのツールでは高くつく方法でそれを知ることになります。このツールは 選択内容を事前に見積もり、残りのクレジットを表示し、すべてのリクエストをキャッシュして 同じ検索に二度払いすることがないようにし、実行を上限設定または停止できるようにします — ブラウザ内だけでなく、サーバー側で。
見つけたものを、きちんと表示します。 フィルタリング可能なグリッドでの投稿サムネイル、 地図上の位置情報付きの場所、誰かが投稿する時間帯を示す曜日×時間のヒートマップ、 2つのアカウント間の比較。JSONの壁ではありません — ただし、すべてのカードで ワンクリックでJSONを確認できます。
結果を他の人に渡すことができます。 1つのボタンで、完了した検索を 任意のブラウザで開けるスタンドアロンのHTMLレポートに変換できます。サーバーも Osintgramも不要です。
AIモード — 欲しいものを説明します。ローカルモデルがコマンドを選び、実行し、 要約します。選択できるのは下記と同じリストからのみで、検索をでっち上げたり、 データを捏造したりすることはできません。
ベースモード — モデルもOllamaも不要です。全29個のコマンドを1行ずつ、 グループ化して検索可能にしています。欲しいものにチェックを入れ、パラメータを設定し、 順番に実行します。
AIモードでユーザー名を空のままにして、ハッシュタグや場所についてだけ 尋ねることもできます — それらの検索はどのアカウントにも属しません。
| プロフィール | プロフィール文とその中のすべてのリンク、フォロワー/フォロー中/投稿数、カテゴリ、公開メールアドレス、電話番号、および座標に至るまでの事業所住所、リンクされたFacebook ID — さらにInstagram自身のこのアカウントについて: 登録国、作成日、ユーザー名が変更された回数 |
| ネットワーク | フォロワーとフォロー中、Instagramが関連として提案するアカウント、誰がタグ付けしたか、誰をタグ付けしたか、最もコメントしている人 — そして2つのアカウント間の相互接続 |
| コンテンツ | 使用回数順にランク付けされたハッシュタグ、キャプション、すべてのコメント、いいねとコメントの統計、閲覧数と有料パートナーシップを含む写真/動画/カルーセルの内訳、投稿時間のヒートマップ、地図上に表示されるジオタグ付きの場所、写真の代替テキスト |
| 連絡先 | ターゲットのフォロワーまたはフォロー中の中にある公開メールアドレスと電話番号 |
| ターゲット不要 | ハッシュタグ(トップまたは最新)または場所から公開された投稿と、それらを公開した人 — さらにURL、ショートコード、またはIDを指定して、特定の1つの投稿またはリールに対するすべてのコメント |
ストーリー、ハイライト、プロフィール画像は直接のCDNリンクとして返されます — そして メディアを含むカードには、オリジナルをワンクリックでzipにまとめる機能があります。
pip install -r requirements.txt
uvicorn src.web.app:app --host 127.0.0.1 --port 8000 --reload # or: make run
http://127.0.0.1:8000 を開きます。
データバックエンドが必要です。ページを開くとパネルが表示され、そこに HikerAPI のキーを直接貼り付けることができます。キーは 受け入れられる前に検証され、次回のために保存できます。(無料の instagrapi ログインも使用できます。ご自身の Instagram アカウントを使用します。トレードオフについてはガイドを参照してください。)
AI モードでは、Ollama をインストールし、 ツール呼び出しに対応したモデルをプルします:
ollama pull llama3.1:8b # ~4.7 GB, the default
ベースモードはこれなしで動作します。
コンテナを使いますか?
docker compose up --build # or: make docker
同じアドレス、同じ挙動 — 127.0.0.1 でのみ公開されます。キー、キャッシュ、保存済み検索はホスト上の config/、cache/、dossier/ に保持され、イメージ内には決して入りません。AI モードはホスト上で動作する Ollama に接続します。
$${\color{red}Warning:}$$ これは
127.0.0.1上で認証なしで動作します。自分のマシン上で動かすために作られています — 先に認証レイヤーを前段に置かずに localhost の外へ公開しないでください。
doc/web-ui.md両バックエンドのセットアップ、各コマンドとそのパラメータおよびコスト、支出を抑える方法、結果のエクスポートと共有、すべての設定オプション、トラブルシューティング。
教育目的のみ。 コントリビューターは本ツールの使用に関していかなる責任も負いません。
config/credentials.ini を決してコミットしないでください — API キーと Instagram の認証情報がそこにあります。これは git で無視されています。そのままにしておいてください。キーが一度でもプッシュされた場合はローテーションしてください。ファイルを削除しても履歴からは消えません。pip install -r requirements-dev.txt
python -m pytest
テストスイートは完全に合成フィクスチャに対して実行されます — APIキー、クォータ、ネットワークは不要です。また、ドキュメントがコードから乖離していないこともチェックします。
機能リクエストやプルリクエストは歓迎します — issueを作成してください。セキュリティ上の問題を見つけましたか?その場合は非公開で報告してください:SECURITY.mdを参照してください。
OsintgramはGiuseppe Criscione(Datalux)によって書かれています。バージョン2.0では、Webインターフェースと再利用可能なサービスレイヤーを中心に再構築され、AIモード、コスト制御、および新しい分析機能が追加されています — 変更履歴を参照してください。
初回リリース以来貢献してくださったすべての方々に深く感謝します:
InstagramのデータはHikerAPIまたはinstagrapiから取得しています。ジオコーディングはNominatim / OpenStreetMapによるものです。地図はLeafletによるものです。ローカルモデルはOllama経由です。
GPL-3.0ライセンスの下でリリースされています。
InstagramはMeta Platforms, Inc.の商標です。このプロジェクトはMetaと提携しておらず、Metaによる承認や認可も受けていません。