반응형

Dev/Python 10

Python으로 Crawling 준비하기(Beautifulsoup4, Selenium 설치 & Chromedriver 설정)

안녕하세요. 이번 포스트는 Python으로 크롤링을 준비하기 위해 필요한 과정을 기술해보도록 하겠습니다. 이 전에 Beautifulsoup과 Selenium으로 크롤링 하는 과정을 예시로 설명하였는데요. 다시 포스트를 보니 정작 중요한 초기설정 및 설치가 빠져 있었습니다. 하나씩 설명 드리도록 하겠습니다. + 현재 개발중인 회사에서도 크롤링을 많이 활용할 것 같아 크롤링에 대한 포스트가 조금 더 다양하게 올라오지 않을까 하는 생각입니다. 1. miniconda로 크롤링 가상환경 생성하기 먼저 conda 또는 miniconda(미니콘다)를 생성 해주도록 하겠습니다. Python을 Server 또는 개인 PC에 바닐라로 설치해 사용해도 좋지만, 다양한 프로젝트를 하다보니 각각 가상화된 환경을 만들어 사용할 ..

Dev/Python 2020.10.24

Python으로 Crawling 하기 - BeautifulSoup & Selenium

이번 포스트에서는 python으로 Crawling(크롤링, 웹사이트의 이미지나 정보를 긁어오는 행위)을 배워보겠습니다. 당연히 웹사이트의 크롤링은 비상업적으로 진행합니다. Python에서 크롤링은 주로 BeautifulSoup과 Selenium을 통해 이뤄집니다. 각각에 대한 간단한 소개와 예제를 다뤄보겠습니다. Python Crawling에 대한 필요 모듈의 설치와 기본 설정은 이전 포스트를 참조 해주시면 되겠습니다. 1. BeautifulSoup BeautifulSoup은 HTML과 XML 문서의 parsing을 하기 위한 Python 패키지입니다. 저장하는 파일은 csv나 json등으로 설정하겠습니다. 예제는 Vogue Korea(www.vogue.co.kr)의 사진과 그 타이틀을 가져오는 것을 목..

Dev/Python 2020.07.05

[Python 기초] Closure & Decorator

이번 포스트에서는 Closure와 Decorator에 대해 알아보겠습니다. 포스트 항목은 다음과 같습니다. 1. Nested Function(중첩함수) 2. Closure 3. Decorator 3.1 기능 및 정의 3.2 형태와 예제 3.3 *args, **kwargs 받기 3.4 @ 사용하기 3.5 Decorator 함수에 변수넣기 1. Nested Function(중첩함수) Closure와 Decorator를 이해하기 전에 Nested Function(중첩함수)에 대한 이해가 필요합니다. def greeting(): def hello(): print("Hello!") hello() >>> greeting() Hello! 위의 코드와 같이 간단한 중첩함수를 만들어 보았습니다. greeting이라는 함..

Dev/Python 2020.06.30

[Python 기초] - Iterator & Generator & Lazy Evaluation

이번 포스트에서는 Iterator와 Generator를 학습하겠습니다. 이 전에 Python을 알아갈 때, 앞선 개념들은 조금이라도 본적은 있지만 Iterator와 Genarator는 거의 처음 본 개념이라 생소했습니다. 포스트의 항목은 다음과 같습니다. 1. Iterator Protocol 2. Iterable 3. Iterator 3.1 정의 3.2 __next__ 3.3 iter & next로 사용하기 4. generator 4.1 generator 정의 4.2 yield 확인 4.3 generator의 dir 4.4 send 4.5 generator expression(제네레이터 표현식) 5. Lazy Evaluation 1. Iterator Protocol Iterator Protocol -> ..

Dev/Python 2020.06.29

[Python 기초] Module & Package 이해하기 4(실습)

[Python 기초] Module & Package 이해하기 1(Module) [Python 기초] Module & Package 이해하기 2(Package) [Python 기초] Module & Package 이해하기 3(import 순서) [Python 기초] Module & Package 이해하기 4(실습) Python Module & Package 이해하기의 네 번째 포스트 입니다. 이번 포스트에서는 패키지를 직접 만들어 보는 과정을 포스트 합니다. 포스트 항목은 다음과 같습니다. 1. 만드는 패키지 안내 2. 파일안내 3. import error 찾기 4. Absolute Path 또는 Relative Path로 import 하기 1. 만드는 패키지 안내 만들고자 하는 패키지는 calculato..

Dev/Python 2020.06.27

[Python 기초] Module & Package 이해하기 3

[Python 기초] Module & Package 이해하기 1(Module) [Python 기초] Module & Package 이해하기 2(Package) [Python 기초] Module & Package 이해하기 3(import 순서) [Python 기초] Module & Package 이해하기 4(실습) Python Module & Package 이해하기의 세 번째 포스트 입니다. 이번 포스트에서는 Python이 어떤 순서로 Package/Module을 찾는지와 import 할 때 Absolute Path(절대경로)와 Relative Path(상대경로)에 대한 비교를 해보겠습니다. 포스트 항목은 다음과 같습니다. 1. import의 순서 2. sys.modules와 sys.path 관찰하기(비교..

Dev/Python 2020.06.27

[Python 기초] Module & Package 이해하기 2

[Python 기초] Module & Package 이해하기 1(Module) [Python 기초] Module & Package 이해하기 2(Package) [Python 기초] Module & Package 이해하기 3(import 순서) [Python 기초] Module & Package 이해하기 4(실습) 지난 포스트에 이어서 진행하겠습니다. 이 포스트에는 Package에 대한 내용을 함께 다루겠습니다. 포스트 항목은 다음과 같습니다. 1. Package 이해하기 2. Package Initialization(패키지 초기화하기) 1. Package 이해하기 module은 하나의 python 파일이었습니다. 어떤 module은 너무 커서 한 파일에 다 넣기에 비효율적일 수 있습니다. 이러한 경우 여..

Dev/Python 2020.06.27

[Python 기초] Module & Package 이해하기 1

[Python 기초] Module & Package 이해하기 1(Module) [Python 기초] Module & Package 이해하기 2(Package) [Python 기초] Module & Package 이해하기 3(import 순서) [Python 기초] Module & Package 이해하기 4(실습) 안녕하세요. 이번 포스트에는 Python의 Module과 Package를 다뤄보겠습니다. 포스트 항목은 다음과 같습니다. 1. Module 이해하기 2. Module 만들기 3. Module 사용하기 4. 다른 방법으로 Module import 하기 5. import as 사용하기 1. Module 이해하기 먼저 Module에 대한 정의 입니다. Module은 Function(함수), Varia..

Dev/Python 2020.06.26

[Python 기초] *args와 **kwargs 사용과 순서

이번 포스트에서는 python의 args와 kwargs의 역할과 문법(순서)를 알아보겠습니다. 포스트 항목은 다음과 같습니다. 1. 사용 문법 2. args 3. kwargs 4. 문법 파헤치기 - *args의 위치 5. 문법 파헤치기 - **kwargs의 위치 6. 문법 파헤치기 - *args와 **kwargs 함께 사용하기 1. 사용 문법 먼저 다음과 같이 *args와 **kwargs 를 활용한 함수에 대해서 확인하겠습니다. # *args and **kwargs 1 def foo(a, b, *args, **kwargs): print(a, b, args, kwargs) foo(2, 9, 12, 34, x=3, name="bob") 2 9 (12, 34) {'x': 3, 'name': 'bob'} *ar..

Dev/Python 2020.06.25

[Python 기초] Function Parameter & Arguments

안녕하세요. Pytho에 기초 가운데 Funtion Parameter의 종류와 에러가 발생하는 케이스를 관찰 해보도록 하겠습니다. 시작하기 전에 함수에 들어가는 input 형태를 parameter나 argumeter라고 하는데 이를 확인하고 가겠습니다. 목차는 다음과 같습니다. 1. Parameter Vs Argument 2. Keyword Arguments 3. Positional Arguments와 Keyword Arguments의 혼용 4. 함수의 parameter -> default value & non default value 1. Parameter Vs Argument 간단하게 정리하면 Parameter는 함수가 받는 변수를, Argument는 함수에 실제로 들어가는 Input Value 입니..

Dev/Python 2020.06.24
반응형