[파이썬 중급] *args 사용법( 2편) 오늘 배울 내용은 *args입니다. 1편에서 다룬 *과는 뭐가 다른것일까요? *args는 쉽게 말해 함수에서 쓰는 *라고 보면 됩니다. 둘은 비슷하면서도 달라 매번 헷갈리는 녀석들인데요. 오늘 포스팅을 통해 두개가 무엇이 비슷하고 다른지 하나 하나 알아가보도록 합시다. 일반적인 형태에서 *사용과 함수에서 *사용의 비교 1) 먼저 복습차원에서 일반적인 * 사용을 보죠. 아래 코드의 결과가 무엇이 나올까요? a, b, *c = 10, 20, 'a', 'c' print(a) print(b) print(c) output : 1편에서 배웠던 것 처럼 c는 a와 , b가 값을 받고 남은 값들을 리스트로 형태로 부여 받게 됩니다. 바로 이어 함수에서 쓰이는 *를 볼까요? def func1(a, b, *c): prin.. 파이썬/파이썬 중급 2021. 5. 4. [파이썬 중급] unpacking에 대해서 잘 알고 계시나요?(*, ** 사용법) 안녕하세요 혹시 여러분은 UNPACKING(언패킹)에 대해서 잘 이해하고 쓰시고 계신가요? 아래 문제를 풀어보시겠어요? l1 = [1,2,3] l2 = ['python'] l3 = [*l1,*l2] a, *b, (c, *d) = l3 print(a) print(b) print(c) print(d) a, b, c, d 에 각각 어떤 값이 나올 것 같으신가요.? 혹시 헷갈리신다면 이번 포스팅을 통해 확실히 개념을 익히시기 바랍니다.. 해당 코드에 정답은 마지막에 공부를 마친 후 다시 보죠! 기본 unpacking a, b, c = [1, 2, 3] # 리스트 print(a) print(b) print(c) 보시는것처럼 오른쪽에 위치한 리스트의 각 원소들이 위치에 상응하는 a, b, c에 들어가는 형태입니다... 파이썬/파이썬 중급 2021. 4. 22. [파이썬 중급] 클래스(CLASS) body 스코프(scope) 개념 정리! 먼저 여러분이 클래스 바디 스코프(class body scope)에 대한 개념을 잘 알고 있는지 테스트 해보겠습니다.! 아래의 코드를 보시고 어떤 값이 출력 될것 같은가요? MAJOR = 0 MINOR = 0 REVISION = 1 def gen_class(): MAJOR = 0 MINOR = 4 REVISION = 2 class Language: MAJOR = 3 MINOR = 7 REVISION = 4 def version(self): return '{}.{}.{}'.format(MAJOR, MINOR, REVISION) return Language() # 객체 생성 lang = gen_class() lang.version() 정답은... 0.4.2 입니다. 위 문제를 틀리신 분들은 끝까지 이번 내용.. 파이썬/파이썬 중급 2021. 4. 16. [python 기초] selenium add_arguement()를 이용한 headless 및 여러가지 기능 배우기 안녕하세요 이번시간에는 셀레니움을 이용하는데 있어 유용한 기술들을 소개하겠습니다. 여러분들에 상황에 맞게 필요한 기능들을 추가하시어 사용하시면 되겠습니다. 1 option 값 객체 설정 1 2 3 4 5 6 from selenium import webdriver from selenium.webdriver.chrome.options import Options chrome_options = Options() # selenium에 여러가지 옵션 값을 추가하기위한 준비 Colored by Color Scripter cs chrome_options 라는 임의의 변수를 지정. 이 변수가 추후에 우리가 원하는 기능을 추가할때 사용되는 변수이다. 2 여러가지 옵션 값 (headless, mute-audio 등) 1 h.. 파이썬/파이썬 기초 2020. 5. 27. [python 기초] 셀레니움(firefox,IE,chrome 이용) 설치 및 사용법 requests 와 urllib 을 이용하여 크롤링을 하다보면 원하는 정보를 긁어오지 못하는 경우가 종종 있습니다. 이러한 상황이 발생되는 이유는 해당 웹페이지가 자바스크립트로 추가적으로 데이터를 불러들어오는 사이트(동적 웹페이지)일 가능성이 높습니다. 이러한 상황에서 'SELENIUM'이 좋은 해결책이 될 수 있습니다. 물론 셀레니움은 직접 웹 브라우저를 실행시켜 작동하기에 속도가 느린 단점이 있습니다. 이런 단점을 보완하기 위해선 requests와 urllib의 조합을 통해 효율적인 스크레이퍼를 만드시길 추천 드립니다. 1. 셀레니움 설치 터미널 창에서 "pip install selenium'을 입력한후 설치를 해줍니다. 2. 셀레니움 웹드라이브 설정 1 2 from selenium import we.. 파이썬/파이썬 기초 2020. 5. 15. [파이썬 기초] 셀레니움(selenium) NoSuchElementException , ElementNotVisibleException 에러 해결 방법 selenium을 통해 크롤링을 하면 'NoSuchElementException , ElementNotVisibleException ' 와 같은 에러를 자주 만나는데요. 이와 같은 에러가 발생하는 이유는 렌더링 되기전에 특정 요소를 찾으려고 했기 때문입니다. 쉽게 말해 아직 웹페이지가 준비도 안되었는데 정보를 긁으려고 하다보니 발생 되는 문제인것이지요. 이와 같은 문제를 해결하려면 어떻게 해야 할까요? 간단합니다. 웹페이지가 준비가 다 될때까지 기다려 주면 됩니다. 파이썬에서는 여러가지 '시간 대기 메소드'가 있는데요. 그 중에서 오늘 알려드릴 메소드는 time.sleep, 명시적대기(implicit wait), 암시적대기(explicit wait) 총 3개 입니다. 각각의 차이점 및 사용법을 알아보겠습.. 파이썬/파이썬 기초 2020. 5. 13. [파이썬 기초] 엑셀에 이미지 삽입하기 엑셀에 이미지를 삽입하는데 오늘 우리가 사용할 라이브러리는 xlsxwriter 이다. 1. 아래와 같이 xlsxwriter을 터미널창에서 설치해주자.(pip install xlswriter) 2. 아래와 같이 필요한 라이브러리들을 import 해주자. 1) from io import BytesIO 엑셀은 이미지를 불러올때 바이트 코드를 받기 때문에 우리가 다운받을 이미지를 바이트 변환할때 사용되는 라이브러리다. 3. 네이버에 원하는 이미지를 검색하자 (ex.사자) 4. 다운받을 경로를 설정 해준다. 5. 엑셀을 이용하기 위한 초기 작업이다. 6. image url을 불러와서 바이트파일로 변환후 우리가 원하는 엑셀 셀에 사진을 넣어보자. >> worksheet.insert_image('원하는 셀', 이미지.. 파이썬/파이썬 기초 2020. 4. 2. [python 기초] PIL 을 활용하여 webp 이미지 확장자 변경하기 이미지를 다운 받았는데 webp이다..? WebP : 구글에서 만든 이미지 파일 포맷이다. '웹피'라고 읽으며 웹사이트의 페이지를 보다 빠르게 읽을수 있다. 쉽게말해 새로운 이미지 압축 포맷이라고 보면된다. 이미지를 변경하거나 수정하려고 파일을 열었는데 파일이 열리지 않을 경우 보통 파일의 확장자가 webp 인 경우가 많다. 이럴때 확장자를 우리에게 익숙한 jpg나 png 로 변환시켜줘야하는데 어떻게 확장자를 변환시킬 수 있을까? PIL 라이브러리에서 Image 클래스를 이용하면 쉽게 변경 가능하다! 우선 from PIL import Image 로 라이브러리 사용준비를 하자. 1. jpg로 바꾸기 1) webp 확장자를 가진 해당 이미지를 로드하기 위해 Image 클래스를 이용하여 open() 함수를 통.. 파이썬/파이썬 기초 2020. 3. 26. [python 기초] 이미지 다운 받기(requests, urllib.request) 이미지 다운 받기(requests, urllib.request) 아직도 손으로 직접 이미지를 클릭하여 저장하기를 반복하는가? 오늘은 이미지를 자동으로 관리하는데 있어 첫걸음인 이미지 다운 받는 법을 알아보자 이미지 다운받는데 사용하는 라이브러리로는 크게 두가지(requests,urllib.request)가 사용되는데 여러분이 편한 것으로 연습하고 숙달하면 된다. 바로 시작해보겠다. 1. 네이버에 사자라는 이미지를 가져오기 위해 '사자'라고 검색한다. 네이버에 사자 검색 원하는 이미지를 오른쪽 클릭 하여 이미지 주소 복사를 하면 해당 이미지의 url 주소를 복사하게 된다. * 인터넷 주소창에 이미지주소를 넣어 해당이미지가 잘 뜨는지 확인해보자. 1. urllib.request 를 이용하는 법 1) 2) 3.. 파이썬/파이썬 기초 2020. 3. 25. [python 기초] 셀레니움 XPATH 를 이용하여 원하는 정보 추출 우리가 크롤링할때 class 값이나 id값이 계속 변하거나 아예 없을 경우 원하는 값을 가져오기가 쉽지 않은 경우가 있다. 이런 경우는 xpath가 여러분의 유용한 도구가 되어 줄 것이다. 아래 예시를 참고하여 학습해보자. 챗gpt로 크롤링 하는 방법 1. 텍스트기준으로 찾기 우리가 크롤링 하고 싶은 부분은 노란색 블록 부분이다. 기본적으로 class값 이용하여 크롤링을 하지만 보다시피 알수 없는 문자로 이루어져있는 class값이다. 이런 class값은 시간이 변함에 따라 자주 변하기때문에 변할때마다 코드를 변경해야하는 수고로움이 발생한다. 이럴때는 변하지 않을 것같은 의미 있는 부분을 기준으로 크롤링하는것이 좋다. 필자가 여기서 변하지 않을 것으로 판단한 부분은 Choose your size라는 텍스트.. 파이썬/파이썬 기초 2020. 3. 20. [파이썬 기초] PIL을 이용하여 이미지 크기를 변경하자. 요즘 구매대행이나 스마트스토어 등 온라인 사업들이 활발해지면서 썸네일(thumbnail) 이미지 수정이나 상품 이미지 수정을 위한 여러가지 방법들이 소개 되고있다. 그중에서 이번 시간은 파이썬을 이용하여 이미지 크기를 수정하는 방법을 알아보자. 1. python 에서 이미지를 수정하기 위해선 PIL이라는 외부 패키지를 다운받아 이용해야 한다. 2. python 코드작성 우리가 수정할 이미지는 C:/ 드라이버에 있는 '이미지수정전' 라는 제목을 가진 jpg 파일이고. 이 파일을 PIL 패키지를 이용하여 '이미지수정후' 라는 제목을 가진 사이즈가 변경된 파일을 만들어 볼것이다. 추후 코드 작성 편의를 위해 수정할 파일이 있는 위치를 '수정할_파일'이라는 임의에 변수로 지정을 한다. 뒤이어 수정 후 파일이 있.. 파이썬/파이썬 기초 2020. 3. 10. 이전 1 ··· 3 4 5 6 다음