ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • [나도 코딩] 웹 스크래핑 4. Requests
    Programing Language/Python 2020. 11. 3. 19:24
    반응형

    웹 스크래핑

    Requests


    이 글은 나도코딩님의 [파이썬 코딩 무료 강의 (활용편3)]을 보고 공부한 내용입니다. 

    용어가 어렵다면 웹 스크래핑 1.HTML 편, 2.Xpath 편 공부하고 오기

     

    1. Requests 이해하기

    Requests란?

    • 웹 스크래핑: 웹에서 원하는 정보를 가져오기
    • 웹 스크래핑을 하기위해서는 HTML 정보를 가져오기 위한 도구

     

    Requests 설치

    • Visual Studio code에서 터미널 창 실행

      -> [ctrl] + `(왼쪽 상단에 물결 키)

    • 터미널 창에 pip install requets 치기 (requests 설치완료!)

     

    에러 문제 참고

    • requests 설치가 안되고 계속 에러가 뜬다면 여기를 참고해주세요.

    • 'Linter pylint is not installed' 에러가 뜬다면 터미널 창에서 직접 설치하기 
      -> pip install pylint  

     

    Requests 작동 확인

    import requests
    res = requests.get("http://www.naver.com")
    print("응답코드 :", res.status_code) # 200이면 정상 접근, 304이면 접근 권한이 없음

     

    2. Requests 기본 실습

    Requests 활용해서 HTML 파일 저장해보기

    • step1. 원하는 page 가져오기
      • 정상접근이면 웹 스크래핑을 하기 위해서 HTML을 가져오고 "웹스크래핑을 진행합니다" 출력
        정상접근이 아니라면 에러를 발생시켜 프로그램을 끝냄.
    # page HTML 가져오기
    import requests
    res = requests.get("http://www.google.com")
    
    # 정상 출력 확인
    res.raise_for_satatus()
    print("웹 스크래핑을 진행합니다.")

     

    • step2. 가져온 page의 HTML 파일 확인 및 저장하기
    # 긁어온 page 자료 길이 확인하기
    print(len(res.text))
    
    # 긁어온 page 자료 확인하기
    print(res.text)
    
    # 긁어온 page 자료 html로 저장하기
    with open("first_google.html", "w", encoding="utf8") as f:
    	f.write(res.text)
    

     긁어온 page 자료 확인하기
    긁어온 자료를 first_google.html로 생성

    • step3. 생성한 html 파일 확인해보기
      • [Open In Defalut Browser] 클릭해서 잘 긁어와졌는지 확인하기  

    원하던 page 웹 스크래핑 page

     

    전체 코드

    ## request 활용해서 page 자료 가져오기
    # 원하던 page 가져오기
    import requests
    res = requests.get("http://www.google.com")
    
    # 정상 접근 확인하기
    res.raise_for_status()
    print("웹 스크래핑을 진행합니다.")
    
    # 긁어온 res 자료 길이와 바로 확인하기
    print(len(res.text))
    print(res.text)
    
    # html파일로 저장하기
    with open("파일명.html", "w", encoding="utf8") as f:
    	f.write(res.text)
    

     

    에러 문제 참고

    • invalid syntax 에러 -> 터미널 창 다시 실행하기 
      -> 터미널 창에서 exit() +Enter
      -> 원인 설명은 다음을 참고해주세요.

     

    이 글은 나도코딩님의 [파이썬 코딩 무료 강의 (활용편3)]을 보고 공부한 내용입니다. 

     

    반응형

    댓글

Designed by Tistory.