IT 공부 기록/Python 13
Jupyter Notebook 설치 및 원격 접속 허용하기
본 포스트는 맥 OS와 GCP (Ubuntu 16.04)를 기준으로 합니다. 1. Jupyter Notebook 설치하기 $ pip3 install jupyter notebook 2. Jupyter Notebook 설정파일 생성하기 $ jupyter notebook --generate-config 3. 접속에 필요한 비밀번호 생성하기 ( ipython 이용 ) $ ipython$ from notebook.auth import passwd$ passwd()Enter Password:Verify Password: # 위의 작업을 마치면 hash key가 발급된다. 이것을 복사해놓자. 4. 위에서 생성한 설정파일에 필요한 정보 기입하기 $ cd ~/.jupyter$ vi jupyter_notebook_conf..
크롤링 ( BeautifulSoup4 라이브러리 )
BeautifulSoup4복잡한 문자열에서 특정 문자열을 가져오기 위해 사용한다.HTML Parser 라이브러리를 활용한다.pip3 install beautifulsoup4 Parserhtml.parser순수 파이썬 코드만 되어있다.lxml.parser외부 c 라이브러리를 처리하기 위해 사용pip3 install lxml을 설치해야 사용할 수 있다. 태그를 찾는 방법find태그 관계 ( CSS Select ) => 강추!하나만 찾을 때는 find, 그 이외에는 Select!
크롤링 ( HTTP 프로토콜과 Requests 라이브러리 )
크롤링을 하기 전, HTTP 프로토콜에 대해 간략히 알아보자. HTTP 정보를 주고 받기위해 만들어진 프로토콜로 요청/응답 패킷으로 정보를 전달한다.패킷은 Header와 Body로 이루어져 있으며, Header에는 필요한 정보가 Key/Value 형태로 담겨있다.Header크롤링을 하기 위해 다음 2개의 헤더를 커스텀하게 설정할 필요가 있다. ( 헤더가 없을 시, 접근 거부도 가능 )Get, Post 메서드 모두 커스텀 헤더를 지정할 수 있으며, User-Agent는 무조건 설정해서 넣어주자!User-Agent : 브라우저 종류Referer : 이전 페이지 URL# Headerrequest_headers = { 'User-Agent': ('Mozilla/5.0 (Macintosh; Intel Mac OS..
클래스, 네임스페이스
클래스모든 클래스는 object class를 상속하며, type class에 의해 만들어진다.인스턴스를 생성해 사용하며 type 메서드를 이용해 클래스를 확인 할 수 있다.메서드클래스 내부에 정의된 함수를 메서드라 하며, 클래스 인스턴스 생성 시, __init__이란 생성자 메서드가 자동 호출된다.파이썬 메서드는 항상 첫 번째 인자로 self를 넘겨준다는 것을 기억하자.self를 이용해 인스턴스별로 메소드를 호출하여 사용할 수 있도록 정의.class func:def fn1():print("function 1") >>> f = func()>>> f.fn1() TypeError: func1() takes 0 positional arguments but 1 was given >>> fn1 메서드에 self 인..
함수, Argument, Packing
함수 기본 구조 1개의 함수 명, 0개 이상의 인자값, 1개의 반환 값함수가 정의되면 함수를 객체로 구조화하고, 파라미터를 함수 로컬변수로 처리한다. 메모리 생성 규칙함수 호출 시마다 Stack에 함수 영역을 구성한다.함수 문서화함수 정의 후, 첫 번째 문장에 comment를 부여하고 __doc__으로 출력할 수 있다.def calculator(x, y):'This is Calculator'return x+y print(calculator.__doc__) >>> This is Calculator Scope 변수의 유효 범위Local > Global > Built-in 순으로 호출전역변수코드의 가독성을 헤치므로 권장하지 않는다.보통 상수 목적으로 쓰이지만, 파이썬에서는 따로 상수 문법이 없고, 대문자를 상..