python 입문 실천 1: 단순 파충류
1. 단일 그림 다운로드
#
from urllib import request
#
url = "http://pic.qiantucdn.com/images/banner/59ad4e6c86b91.jpg"
#
request = request.urlopen(url)
#
response = request.read()
# ,
f = open("C:/python_test/"+url.split("/")[-1],"wb")
#
f.write(response)
#
f.close()
그 중에서 마지막 세 마디 코드 도 다음 과 같이 간소화 할 수 있다.
with open("C:/python_test/"+url.split("/")[-1],"wb") as f:
f.write(response)
with 키 워드 를 사용 하면 흐름 을 닫 을 필요 가 없습니다.
2. 전체 그림 다운로드
# urllib ,request , HTTP
import urllib.request
#
import re
# , ,
url = "http://www.58pic.com/piccate/5-145-0.html"
#
req = urllib.request.urlopen(url)
#
res = req.read()
#
res = repr(res)
# r , ,
# \S * 0-n
regex = r'http://[\S]*.jpg'
# ,
pattern = re.compile(regex)
# findall , , list
get_image = pattern.findall(res)
# ,
page = 1
for image in get_image:
# urlretrieve
urllib.request.urlretrieve(image, "C:/python_test/"+"%s.jpg" % page)
page += 1
3. 다운로드 진행 표시
이 url retrieve 방법 은 다음 과 같 습 니 다.
urlretrieve(url, filename=None, reporthook=None, data=None)
이 방법 은 두 개의 요소 (filename, headers) 를 포함 하 는 원 그룹 을 되 돌려 줍 니 다. filename 은 로 컬 에 저장 하 는 경 로 를 표시 하고 header 는 서버 의 응답 헤더 대상 정 보 를 표시 합 니 다.다음 과 같다.
('C:/python_test/34.jpg', )
다음은 이 함 수 를 사용 하여 네트워크 에 있 는 파일 을 다운로드 하고 다운로드 진 도 를 표시 합 니 다.
import urllib.request
#
def callback(a, b, c):
'''
:param a:
:param b: , 8192
:param c:
'''
per = 100.0 * a * b / c
if per > 100:
per = 100
print('%.2f%%' % per)
#
url = "http://sw.bos.baidu.com/sw-search-sp/software/3756358c42c34/npp_7.5.1_Installer.exe"
#
filename = "c:/python_test/notepad++.exe"
#
urllib.request.urlretrieve(url, filename, callback)
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
다양한 언어의 JSONJSON은 Javascript 표기법을 사용하여 데이터 구조를 레이아웃하는 데이터 형식입니다. 그러나 Javascript가 코드에서 이러한 구조를 나타낼 수 있는 유일한 언어는 아닙니다. 저는 일반적으로 '객체'{}...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.