# 研究室リストづくり キット

`v1.2`（2026-08-27）

自分の大学の研究室を一覧にして、**そのままフォームに繋がるダッシュボード**を手元に作るための道具です。
GitHubもサーバーも要りません。このフォルダの中だけで完結します。

---

## まず3つだけ

### 1. `config.json` に自分の情報を書く

```json
{
  "大学名": "北海道大学",
  "担当者の苗字": "太田"
}
```

この2つだけ直せばOKです。あとの項目は触らなくて大丈夫！
苗字を入れておくと、**フォームに自分の名前が最初から入った状態**で開きます。

### 2. `data/catalog.csv` に研究室を足していく

1行 = 1研究室です。ここが本体で、ここを育てるのが活動そのものになります。
最初はサンプルが3行入っているので、消して自分の大学のものに置き換えてください。

### 3. `python3 build.py` を実行する

```
python3 build.py
```

`index.html` ができるので、ダブルクリックで開いてください。
カードの「フォームを開く」を押すと、**大学・学部・学科・研究室名・自分の名前が入った状態**でフォームが開きます。

CSVを更新するたびに `python3 build.py` を実行し直せば、ダッシュボードも最新になります。

---

## Claude Codeへの頼み方

このフォルダをVS Codeで開いて、Claude Codeにこう言うのが早いです。

> このフォルダの README.md を読んで。
> そのあと、〇〇大学の工学部の研究室一覧を探して、data/catalog.csv に追加して。

うまくいかないときは、**段階を分ける**とだいたい進みます。

> まず、〇〇大学の研究室一覧が載っているページを探して、URLだけ教えて。

> そのページから、研究室名・教員名・研究分野を抜き出して表にして。

> その表を data/catalog.csv の形式に合わせて追記して。

**画面のスクショを貼って「これどうすればいい？」も有効です。** 迷ったら聞いてください！

---

## `data/catalog.csv` の列

| 列 | 必須 | 内容 |
|---|---|---|
| 学部 | ● | 学部・学群など、大学の一番大きい区分 |
| 学科 | ● | 学科・学類・専攻。複数に重複掲載されている研究室は `情報工学類｜知能機能システム` のように `｜` で並べる |
| 研究室名 | ● | 公式サイトの表記に合わせる |
| 所属教員 | ● | `氏名(職位)` を `・` で連結。例 `山田 太郎(教授)・佐藤 花子(助教)` |
| 研究分野 | ● | キーワードを `／` か `、` で連結 |
| 主キャンパス | ● | 学生が普段通うキャンパス |
| キャンパス詳細 | | 複数キャンパスにまたがる場合の補足 |
| 号館・部屋 | | 分からなければ空欄でOK |
| 公式HP | ● | 研究室ページ。無ければ大学の教員紹介ページ |
| 区分 | | 通常は空欄。閉じた研究室は行を消さず `削除` と書く |
| 備考 | | 退職・改組など、判断の根拠を残す |
| 口コミステータス | | 空欄のままでOK（フォーム回答から自動で判定します） |
| ID | | **空欄のままでOK。`build.py` が自動で振ります** |

---

## 大事なルールが4つあります

### 1. 推測で埋めない

分からないことは**空欄にして、「どこを探したか」を備考に書いてください**。
「見つからなかった」も立派な成果です。次の打ち手が決まるので。

逆に、推測で埋めたデータは後から誰も検証できません。1件でも混ざると、そのデータ全体が信用できなくなります。
急がなくていいので、確実なものだけ積んでいきましょう。

### 2. 行を消さない

研究室が無くなったら、行を削除せずに `区分` を `削除` にしてください。
IDがずれると、集めた口コミとの対応が壊れます。

### 3. 出典を持っておく

どのページから取ったかを手元に残してください。
あとで「この先生いま居ないよね？」が**必ず**起きます。

### 4. 公式サイトを鵜呑みにしない

大学の公式ページより、**研究者データベースの方が新しいことがあります**。
退職した教員が公式ページに残っていた例が、実際に何度もありました。

---

## 探す順番（速い順）

1. **大学全体の研究者データベース** — いちばん新しくて、いちばん網羅的
2. **ラボガイド・研究室検索のページ** — JSONで丸ごと取れることがあります。当たりを引くと一瞬で終わります
3. **学科ごとの教員一覧** — 学科単位で潰していく地道な道
4. **シラバス** — 公開のメールアドレス欄があれば、連絡先も一緒に取れます

Claude Codeに「この大学の研究者データベースを探して」と頼むところから始めるのが確実です。

---

## 集まった口コミに色を付ける

フォームの回答をダウンロードして `data/responses/` に置き、`python3 build.py` を実行し直してください。

```
data/responses/フォームの回答.csv
```

回答があった研究室のカードが**緑になります**。何件集まったかと、誰が記入したかも出ます。
自分の進捗が色で見えるので、ここまでやると一気に楽しくなります！

CSVは何ファイル置いても大丈夫です。他大学の回答が混ざっていても、`config.json` の大学名で自動的に絞られます。

### 「カタログに見つからなかった回答」が出たとき

`build.py` を実行したとき、こういう警告が出ることがあります。

```
⚠️ カタログに見つからなかった回答が 1 件あります:
   - HCI研究室（情報エレクトロニクス学科）… フォームの回答.csv
```

これは、**回答に書かれた研究室名がカタログの表記と違う**ということです。
だいたいは略称（`HCI研究室` と `ヒューマンコンピュータインタラクション研究室`）なので、カタログ側の表記を正式名称に揃えるか、備考にメモしておいてください。

---

## メールアドレスを集める

`data/emails.csv` に書きます。列は5つだけです。

```
研究室名,学科,メールアドレス,出典URL,確認日
○○研究室,情報工学科,yamada@xxx.ac.jp,https://xxx.ac.jp/lab/contact,2026-09-01
```

**出典URLが空のものは載せないでください。** 根拠のないアドレスは、あとで誰も検証できません。

`python3 build.py` を実行し直すと、カードにアドレスと「出典」リンクが出て、
まだ取れていない研究室は黄色で表示されます。フィルタに「連絡先がまだ」も増えます。

Claude Codeに頼むときは、**「見つからなかったものも教えて」を必ず入れてください**。
これがないと、それっぽいアドレスで埋めてしまうことがあります。

🔒 **`emails.csv` は公開しないでください。** 先生方の連絡先が入っています。
GitHubに上げたり、そのまま人に渡したりはNGです。

---

## すでに集まっている研究室がある大学へ

**東京大学・早稲田大学・東京科学大学**は、運営側で先に何件か回っています。
同じ研究室に2周目をかけると先方に迷惑がかかるので、**自分の大学の `already.csv` を必ず入れてください**。

```
curl -fsSL https://lablog-catalog.pages.dev/already/utokyo.csv -o data/already.csv
```

| 大学 | ファイル |
|---|---|
| 東京大学 | `already/utokyo.csv` |
| 早稲田大学 | `already/waseda.csv` |
| 東京科学大学 | `already/science-tokyo.csv` |

置いて `python3 build.py` を実行し直すと、カードの色が4種類に増えます。

| 色 | 意味 | どうする |
|---|---|---|
| 緑 | 集まった | もう送らなくてOK |
| 紫 | 面談が入ってる | 待つ |
| 青 | 調整中 | 運営が動いています。触らない |
| グレー | 🚫 断られた | **絶対に送らない**。理由もカードに出ます |

**辞退の研究室にはボタンが出ません。** 押せないようにしてあるので、うっかり送ることはありません。

上の3大学以外は、まだ1件も集まっていません。全部が自分の成果になります！

---

## 追加で聞きたいことがあるとき

フォームは**全大学で共通のものを1本だけ**使っています。
自分の大学で追加で聞きたいことがあれば、**後半の自由記述欄で聞いてください**。

別のフォームを立てるのはやめておいてください。回答が別々の場所に溜まると、このダッシュボードの色付けが効かなくなります。

---

## うまくいかないときは

- `python3` が無いと言われる → `python3 --version` で確認。入っていなければClaude Codeに「python3を入れたい」と聞いてください
- `index.html` が真っ白 → `python3 build.py` がエラーで止まっていないか、ターミナルの表示を確認
- 文字化けする → CSVは**UTF-8**で保存してください。Excelで開いて保存し直すと壊れることがあります

30分やって進まなかったら、遠慮なくLINEグループで聞いてください！
同じところで詰まっている人、絶対にいます。
