-
日野キャンパスの時間割pdfのうち,必要情報をcsvにまとめていただきたいです.
-
必要情報は以下です.
- 授業番号(lecture_id)
- キャンパス(campus)
- 授業棟(building)
- 教室番号(room_id)
-
履修年次,科目名,教員名,開講時限等,上記以外の情報は必要ありません.csvには記述しないでください.
-
前期・後期共にお願いします.
- csvを読んでDBに情報を流し込むので,ある程度文字列に規則性を持たせたいです.そのため,csvファイルに記述される文字列は以下の制約を満たしていて欲しいです.
- 数字は全て半角である.
- アルファベットは全て半角である.
- 授業棟は"(棟名または棟番号)+号"の形式である.
- 2号館であれば
2号
.
- 2号館であれば
- 1行に記述される内容は,左から
授業番号,キャンパス,授業棟,教室番号
の順である. - 授業棟の情報と教室番号は異なる列に記載する.
- L0099が4号館404教室で開講される場合,
L0099,4-404
などではなくL0099,4号,404
.
- L0099が4号館404教室で開講される場合,
- 特殊教室は教室番号の列にその名称を記載する.
- 特殊教室の名称は時間割pdfに記載されているものと同一である.
- L0099が2号館CAL室で開講される場合,
L0099,2号,CAL室
- L0099が2号館CAL室で開講される場合,
- 特殊教室の授業棟情報が記載されていない場合,可能な限り補完して記述する.
- L0099が大講義室Aで開講される場合,
L0099,2号,大講義室A
- L0099が大講義室Aで開講される場合,
- 1つの授業が複数の教室を使用する場合,教室ごとに1行が記述されている.
- L0254が4-403,2-CALで開講される場合,
L0254,4号,403\nL0254,2号,CAL室
- L0254が4-403,2-CALで開講される場合,
- 複数コマ連続で授業が行われる場合,同一の記述を複数行行う必要はない.
- L0136は3,4限にまたがって開講されるので,
L0136,4号,405\nL0136,4号,405
と書く必要はないです.L0136,4号,405
だけで構いません. - データを流し込む段階で排除されるので,複数行記述されていても問題ありません.
- L0136は3,4限にまたがって開講されるので,
- データを手入力する場合に補助となるプログラムです.
- 以下のことをします.
- 出現しうる大文字を小文字に変換します.
- 授業棟は数字のみを入力する想定で,半角に変換した後に
号
を付け足します. - キャンパスの情報を自動で記述します.
- 繰り返し情報を入力できます.
ctl
+c
でプログラムを終了すると,それまでに入力した情報を,同一階層に存在するclass_alloc.csvに書き込みます.
- 先の制約を満たす範囲内で,使いやすいように自由に改変してください.
- pdfファイルをスクレイピングしてみてもいいかもしれません.データ構造を理解したり,文字列を処理するいい練習になるかも(おせっかい).