Skip to content
This repository has been archived by the owner on Nov 21, 2022. It is now read-only.

국회를 감시하는 사람들을 지켜보는 크롤러 - 왓치.왓치.피플파워

License

Notifications You must be signed in to change notification settings

sluggishhackers/watch.watch.peoplepower

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

8 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

watch.watch.peoplepower

참여연대 열려라국회 사이트(watch.peoplepower21.org) 크롤러로 왓치.피플파워 사이트를 왓치하는 왓치.왓치.피플파워 프로젝트입니다.
이 프로젝트의 기원은 코드포서울 Congress Report입니다.

Sluggish Hackers

How To Use

  1. 초기화
store := store.New()
crawlerService := crawler.New(store)
  1. 국회의원 목록 수집하기
crawlerService.FetchPeople()
  1. 본회의 목록 & 표결정보(optional) 수집하기
crawlerService.FetchSessions(true)
crawlerService.FetchSessions(false) // 표결정보 제외하고 수집하기
  1. 수집 후 표결정보 CSV로 꺼내기
exporter := exporter.New()
votes := store.GetVotes()

// Column Headers
rows := [][]string{
   {"idx", "vote", "bill_idx", "bill_name", "turn", "status", "date", "name_kr", "party"},
}

for _, v := range votes {
   rows = append(rows, []string{v.ID, v.Result, v.BillID, v.BillName, v.SessionTurn, v.Status, v.Date, v.PersonName, v.PersonParty})
}

exporter.CSV(rows, "20.csv")

// File "data/20.csv" is created!

Features

크롤링 대상

  1. 국회의원별 표결 정보
  2. 국회의원 목록 & 세부정보
  3. 본회의 목록 & 세부정보
    • 표결 정보를 위해 일부만 작업되어 있음
  4. 상임위원회 목록 & 세부정보

Export

  • 파일 유형
    • CSV
    • JSON

Development

1. Crawler

  1. 국회의원 관련
    1. people_crawler를 통해 페이지 수를 파악한 후 의원 목록을 수집
    2. person_crawler를 통해 의원별 상세 정보를 수집
  2. 본회의 관련
    1. sessions_crawler를 통해 현재까지의 본회의 목록을 수집
    2. session_crawler를 통해 본회의 상세 정보를 수집
  3. 표결 관련
    1. session_crawler를 통해 수집된 본회의 정보에서 본회의에서 처리된 안건 목록을 수집
    2. votes_crawler를 통해 안건별 표결 정보를 수집. 표결 정보는 HTML 형태가 아닌 별도의 API를 통해서 수집. 이 떄 사용되는 meetingbill_id는 어떤 ID를 의미하는 것인지 특정하지 못해서 Javascript 코드 내에서 찾아내 활용하는 중.

2. Exporter

  1. CSV

Open Sources

Credit

LICENSE

MIT

About

국회를 감시하는 사람들을 지켜보는 크롤러 - 왓치.왓치.피플파워

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages