뭉지(moonz)
작은 발자국들의 위대한 여정
뭉지(moonz)
  • All (201)
    • Test Code (4)
    • 백엔드 개발하며 작성한 (26)
      • Spring (17)
      • 데이터베이스 (6)
      • 기억할 내용 (3)
    • 언어 (53)
      • Java (25)
      • node.js (7)
      • Python (21)
    • 클라우드 (6)
    • Algorithm & Data Structure (51)
      • 개념 (15)
      • 문제 풀이 (36)
    • 유용한 모든 것 (16)
    • monologue (7)
      • 업무 노트 (1)
      • 관리 로그 (0)
      • 내 이야기 공책 (6)
    • Project (2)
    • TroubleShooting (8)
    • 지식 (18)
      • Machine Learning (6)
      • Review (7)
      • Web (5)
    • Computer Science (5)

블로그 메뉴

  • 홈
  • 태그

인기 글

최근 글

최근 댓글

전체 방문자
오늘
어제

티스토리

hELLO · Designed By 정상우.
뭉지(moonz)

작은 발자국들의 위대한 여정

파이썬을 이용한 웹데이터 다운로드하기2_urlopen() 함수
언어/Python

파이썬을 이용한 웹데이터 다운로드하기2_urlopen() 함수

2020. 8. 28. 18:01
반응형

(2) Request 모듈 안에 urlopen 함수() ; 메모리에 로딩하고 저장!

▶Urlretrieve()함수로 데이터를 받게되면 우리가 필요로 하지않는 것까지 다 받게 되기 때문에

Urlopen()함수로 우선 메모리에 올려놓고, 우리가 필요한 데이터만 open하는 것이 더 유용하다.

▶urlretrieve() 함수는 파일로 곧바로 저장을 하지만, urlopen() 함수는 파일로 바로 저장x, 메모리에 로딩을 한다.

▶하드디스크에 저장할땐 파일형태로 저장하지만, 메모리 상에 로딩하거나 저장할 땐 변수로 저장.

import urllib.request

url = "https://t1.daumcdn.net/daumtop_chanel/op/20200723055344399.png" # 이미지파일은 바이너리(2진)모드로 만들어져있음.(우리가 읽을 수 없음)
imgPath = "c:\pySrc\daum2.png"

downImg = urllib.request.urlopen(url).read()  # 메모리에 로딩한다 == 메모리변수에 저장 , read라는 메서드를 이용해서 읽어오는 과정이 필요

# 웹상에서 읽어온 이미지를 변수downImg 에저장

# 파일로 저장하는 과정
# f = open("a.txt","w")  a.txt 파일로 저장하고 쓰기모드로 파일을 열겠다.
# f.write("테스트로 파일에 내용을 적습니다")  파일을 쓰기모드로 열어서 ""내용을 적겠다.
# f.close()

# 위의 과정을 with 문으로 간단하게 표현할 수 있다. (close 처리를 할 필요 없음)

# with open("a.txt","w") as f:
# f.write("테스트로 파일에 내용을 적습니다")


with open(imgPath,mode="wb") as f :      #새로운 파일(f)로 만드는 과정, daum2.png파일을 쓰기(w)와 바이너리(b) 모드(이미지)로 열겠다.
	f.write(downImg)     #메모리에서 읽어옴

print("이미지 다운로드 완료")

◦ python의 library를 읽어오는 import문을 이용

◦ 이미지 주소를 변수에 지정

◦ 이미지 파일명을 변수에 지정

◦ urlopen()함수를 호출할때는 urllib (안에) . request (안에) . urlopen(url)

◦ read() 메서드를 이용해서 데이터를 읽는다. 웹상에서 읽어온 이미지를 변수 downImg에 저장.

◦ 보통 이미지파일은 바이너리(2진)모드로 만들어져있다.

◦ with 문으로 파일을 저장한다. (with문은 위에서 언급한 것처럼, 파일을 저장하는 과정을 좀더 쉽게 할 수있는 구문)

 

ex02.py로 저장된 메모장

▶cmd창에서 'python ex02.py' 실행하면 잘 실행이 되는 것을 확인할 수 있음.

 'dir/w'를 쳐보면 확인 가능!

윈도우 상에서도 확인 가능하다!

반응형
저작자표시 (새창열림)

'언어 > Python' 카테고리의 다른 글

Beautiful Soup 사용하여 html 분석하기  (0) 2020.09.07
기상청 날씨 데이터 cmd창에서 직접 불러오기  (0) 2020.09.05
기상청 날씨 데이터불러오기  (0) 2020.09.05
파이썬을 이용한 웹데이터 다운로드하기1_urlretrieve()함수  (0) 2020.08.28
머신러닝 개념과 파이썬 기초 문법  (0) 2020.08.26
    '언어/Python' 카테고리의 다른 글
    • 기상청 날씨 데이터 cmd창에서 직접 불러오기
    • 기상청 날씨 데이터불러오기
    • 파이썬을 이용한 웹데이터 다운로드하기1_urlretrieve()함수
    • 머신러닝 개념과 파이썬 기초 문법
    뭉지(moonz)
    뭉지(moonz)
    제가 깨달은 것을 정리하는 공간입니다. 🧡

    티스토리툴바