본문 바로가기

Python으로 웹 스크래퍼 만들기

Python으로 웹 스크래퍼 만들기 복습 8일차[csv] (Feat. 노마드코더)

본 포스팅은 노마드코더님의 온라인 강의에 대한 복습을 기록하기 위한 포스팅입니다.

※ 본 포스팅의 내용은 강의를 들은 후 필자의 개인적인 의견을 기재한 것이니, 정답이 아닐 수 있음을 참고하십시오.

강의 소개 : 파이썬으로 웹 스크래퍼 만들기 (2주 완성반)
  -. 내용 : 파이썬 기초 (타입, 변수, 함수, 클래스 등 및 웹 스크래퍼 코드 작성법)
  -. 비용 : 100% 무료 강의
  -. 비고 : 한글 자막 제공 / 강의 100% 완료 시 10% 할인 쿠폰 제공
온라인 강의 : https://nomadcoders.co/
    /    풀스택 개발자 로드맵 : https://nomadcoders.co/roadmap
유튜브 채널 : https://www.youtube.com/channel/UCUpJs89fSBXNolQGOYKn0YQ
 

노마드 코더 Nomad Coders

한국인 린과 콜롬비아인 니꼴라스의 프로젝트 "노마드 코더" 입니다. 2015년 떠나, 현재까지 원하는 곳에서 일하며, 살고 있습니다. + + Nomad Academy: https://nomadcoders.co

www.youtube.com


 

#2.14~2.16 Saving to CSV

  1) csv 저장을 위한 소스코드

""" main.py """

from indeed import get_jobs as get_indeed_jobs 
from stackoverflow import get_jobs as get_stackoverflow_jobs
from save_to_csv import save_to_csv

# Indeed Site 스크랩
indeed_jobs = get_indeed_jobs() 

# StackOverflow 스크랩
stackoverflow_jobs = get_stackoverflow_jobs() 

# Indeed + StackOverflow 스크랩 자료 합치기
jobs = indeed_jobs + stackoverflow_jobs

# csv로 저장하기
save_to_csv(jobs)
""" save_to_csv.py """

import csv

def save_to_csv(jobs):
  # 파일 열기 단, 파일이 없을 경우 생성해줌
  # mode 3가지 설명
  file = open("jobs.csv", mode="w")
  
  # csv를 작성할 수 있도록 하는 변수 생성
  writer = csv.writer(file)

  # row(행)의 값 추가
  writer.writerow(["title", "company", "location", "link"])

  for job in jobs:
    # 딕셔너리에 저장된 값중 Value만 가지고 와서 row의 값 추가
    # 단, dict.value()의 경우 type이 dict_value 이므로 list로 변환하여 저장해야 함
    writer.writerow(list(job.values()))

  return

    -. indeed.py, stackoverflow.py의 경우 수정사항이 없어 별도로 업로드하지 않았습니다.

    -. 혹시 소스 코드가 필요하신 분은 이전 포스팅을 참조하시기 바랍니다.

 

Python으로 웹 스크래퍼 만들기 복습 7일차 (Feat. 노마드코더)

본 포스팅은 노마드코더님의 온라인 강의에 대한 복습을 기록하기 위한 포스팅입니다. ※ 본 포스팅의 내용은 강의를 들은 후 필자의 개인적인 의견을 기재한 것이니, 정답이 아닐 수 있음을 참

mans-daily.tistory.com

 

  2) save_to_csv.py 설명

    -. open() : 파일을 열 때 사용, 만약 기존 파일이 없을 경우에는 생성

        * open("파일명.csv", mode="모드")

        ** mode Attribute 설명

종류 모드 이름 모드 설명
r 읽기(read) 모드 읽기 전용으로 파일을 Open
(기존 내용을 불러옴 / 신규 내용 추가 불가능)
w 쓰기(write) 모드 쓰기 전용으로 파일을 Open
(기존에 있는 내용 모두 삭제 후 신규 내용을 저장)
a 추가(add) 모드 읽기/쓰기로 파일을 Open
(기존에 있는 내용의 뒤에 신규 내용을 추가)

    -. writer() : csv 패키지에서 제공하는 function으로 open()으로 실행한 파일을 쓰기 모드 객체로 생성한다.

    -. writerow() : csv 패키지에서 제공하는 function으로 writer()로 준비된 파일에 한 행씩 리스트를 추가할 때 사용한다.

import csv

f = open("test.csv", "w")
wr = csv.writer(f)
wr.writerow(["No", "Name", "Score", "Pass"])
wr.writerow([1, "Nomad", 100.0, True])
wr.writerow([2, "Ilion", 50.0, False])

f.close()


""" 출력 값 """
No,Name,Score,Pass
1,Nomad,100.0,True
2,Ilion,50.0,False

 

  3) 최종 작성 된 코드(CSV로 저장하기) 결과물 스프레드 시트로 확인하기

    -. repl.it 사용자의 경우 파일 다운로드 방법

Python으로 웹 스크래퍼 만들기 복습 8일 차 1

        * 폴더 추가 옆 점 3개 클릭 > Download as Zip 후 압축 해제

 

    -. 구글 스프레드시트로 Data 확인하기

Python으로 웹 스크래퍼 만들기 복습 8일 차 2

        * 구글 로그인 > 위 링크로 접속 > 개인(스프레드시트) 선택

 

Python으로 웹 스크래퍼 만들기 복습 8일 차 3

        * 신규 스프레드 시트 생성

 

Python으로 웹 스크래퍼 만들기 복습 8일 차 4

        * 파일 > 가져오기(Import) 선택

 

Python으로 웹 스크래퍼 만들기 복습 8일 차 5

        * 업로드 > csv 파일 선택

 

Python으로 웹 스크래퍼 만들기 복습 8일 차 6

        * 구분자 유형 : 쉼표(Comma) 선택 > 데이터 가져오기(Import)

 

Python으로 웹 스크래퍼 만들기 복습 8일 차 7

        * 구글 스프레드시트 Data 확인하기 (파이썬 일자리 다운로드 받기)

 

 

 

※ 본 포스팅의 내용은 강의를 들은 후 필자의 개인적인 의견을 기재한 것으로,

   정답이 아닐 수 있음을 참고하십시오.

 


이상으로 Python으로 웹 스크래퍼 만들기 복습 8일 차를 마치겠습니다.

 

Python으로 웹 스크래퍼 만들기 복습 8일 차 8