---
# System prepended metadata

title: プログラム用

---

# プログラム用
## CSVの仕様について
表1.1
|id | player_id|name | content | mes_type | day | time  | role |
|-|-|-|-|-|-|-|-|
|increment|string| string | string | string | int| timestamp  |string|
- id
自動的に振られるID
- name
発言者の名前
- content
発言の内容

- mes_type
htmlのクラス名から各メッセージのタイプを取得
mes_whisper
mes_Aanounce 
mes_say
mes_think
- day
人狼ゲーム内の日付
- time
そのゲーム中の発言の時間
- role
発言者の役職
![](https://i.imgur.com/cgRNlMl.png)

### webからclassの特定
webスクレピングとは
htmlの要素からデータを一括でを取得することをいいます(今回だとCSV)。

スクレイピングを行うには、html上にある特定の要素のみを抽出する必要がある。
そのためにHTMLの要素に特徴を持たせるclassの特定が必要になる。

例、
```
<div class="ui-spinner unselectable hidden-print" style="display: none;">
```

一例として、
今回は発言者の発言の種類によってwebページ上のクラスが変化していることがわかったので、

それぞれのHTMLのタグの中にある
'announce','extra','mes_say_body1','mes_think_body1','mes_whisper_body1','mes_groan_body1'
を識別して、発言の種類も取得している。
この説明は、表1.1で言うところのmes_typeって言うところに当たる。



あと、これからユーザ名と役職の結びつけのために色々考える予定。

### 結合時の問題(4/26加筆)
- 結合時にinner join がうまく動かず
- GMの役職の挿入
- エピローグの取得

### 問題点(5/7(金))
。のあとを取ってくるので、
名前に。が入ってる場合に誤って取得してしまうことがある

「だった。」の正規表現を修正。

## GiNZAメモ
### 石元


### 荒井
