Q00/data.go.kr-crawling

10만개 넘어갈 경우 너무 오래걸림

Q00 opened this issue · 4 comments

Q00 commented

해결방법

  • 정보 제공한 곳에 전화하여 numOfRows를 백개 이상으로 늘려달라고 제안

  • 쓰레드 사용하여 a~z까지 비동기 코드 사용 lock으로 엑셀 입력 제한
    - 다른 방법으로는 여러 파일을 동시에 만들었다가 나중에 합치는 방법이 있음
    - gevent 사용하기

  • csv와 pandas를 xlsx대신 사용하기
    - csv 합치기

Q00 commented
  1. 관계자와 통화함 내일 연락하기로 하였음
  2. 트렐로에 카드만들어놓음
  3. csv로 더욱 간단하게 접근
Q00 commented
  1. 관계자 통화 하였으나 numOfRows 수정불가
Q00 commented

while not pool.free_count() == 15: gevent.sleep(0.1) for x in range(0, min(queue.qsize(), pool.free_count())): pool.spawn(getData)
해당부분으로 워커 생성 후 비동기적으로 request

else: #검색잘되면 엑셀 파싱 #pool map method vs pool map_async #어떤것이 더 효율이 좋을지 결정필요 #pool 워커안에 pool넣을 수 있는지 확인 필요 pool_excel.map(makeCSV,soup.find_all('item'))

  • pool map vs pool map_async 결과 비교
  • pool 안에 pool 할 수있는지 확인
Q00 commented