인공지능/파이썬 47

파이썬 - Numpy

Numpy 과학계산을 위한 라이브러리로 다차원 배열 처리하는데 필요한 기능을 제공한다. numpy 배열은 동일한 타입의 값을 갖는다. 1. 기본 사용법 1) numpy array 생성 # 1차원 배열 만들기 z1 = np.array([1,2,3]) # 2차원 배열 만들기 (2행3열) z2 = np.array([[1,2,3],[4,5,6]]) # 2차원 배열 만들기 (3행3열) lst = [[1,2,3],[4,5,6],[7,8,9]] z3 = np.array(lst) # bool타입의 배열 만들기 (3행3열) b = np.array([[False,True,False], [True,False,True], [False,True,False]]) 2) 연속되는 수 배열 생성 및 차원 바꾸기 # range로 배열 ..

파이썬(Python) - Class ②

Class에서 SQLite 사용하기 # sqlite3 임포트 import sqlite3 # 클래스 생성 class Health: def __init__(self,arg1,arg2,arg3,arg4): self.name = arg1 self.age = arg2 self.height = arg3 self.weight = arg4 def print_info(self): print("이름:",self.name) print("나이:",self.age) print("키:",self.height) print("몸무게:",self.weight) # sqlite 사용하기 def input(self): self.conn = sqlite3.connect("C:/data/health.db") self.c = self.conn..

파이썬(Python) - Class ①

절차(구조적) 지향 프로그램(procedural language) C, R, plsql 물이 위에서 아래로 흐르는 것처럼 순차적인 처리가 중요시 되며 프로그램 전체가 유기적으로 연결되도록 만드는 프로그램밍 기법이다. 반복되는 코드는 함수를 만들어서 사용 단점 : - 재사용할 수 없다. - 확장성이 떨어진다. - 유지보수가 어렵다. 객체 지향 프로그램(Object Oriented Language, OOP) JAVA, C++, C#, Python 구조적 프로그래밍과 다르게 큰 문제를 작은 문제들로 해결할 수 있는 객체들을 만든 뒤 이 객체들을 조합해서 큰 문제를 해결하는 방법 객체 : 사물 개념중에 명사로 표현할 수 있는 것을 의미한다. 클래스 : 객체를 설명해 놓은 것(객체의 설계도) 인스턴스 : 클래스를..

파이썬(Python) - 스크래핑 ④ selenium을 이용한 크롤링

selenium 웹브러우저를 컨트롤하여 웹UI(User Interface)를 자동화하는 도구 pip install selenium https://chromedriver.chromium.org/downloads from selenium import webdriver 1. 사이트 접속 및 스크린샷 찍기 # chromium으로 크롬 브라우저 열기 browser = webdriver.Chrome('C:/chromedriver.exe') # 크롬 브라우저 내부 대기 초시간 browser.implicitly_wait(2) # url 접속 browser.get("https://truman.tistory.com/") # 접속한 페이지의 url정보 확인 print(browser.page_source) # 접속한 페이지 ..

파이썬(Python) - 크롤링 연습 ② 국민 청원 청원 목록 수집(추천순)

# 국민 청원 접속 및 청원 목록 url 수집 url = [] for i in range(1,21): html = urlopen("https://www1.president.go.kr/petitions/best?page={}".format(i)) soup = BeautifulSoup(html,'html.parser') for j in soup.findAll('div',{'class':'bl_body'}): for k in j.findAll('div',{'class':'bl_subject'}): a = k.find('a')['href'] if bool(re.match('/[a-z].*/[0-9].*\?navigation=best',a)): url.append(a) # 청원 제목 수집 title = [] fo..

파이썬(Python) - 한글 형태소 분석

KoNLPyhttps://konlpy-ko.readthedocs.io/ko/v0.4.3/KoNLPy: 파이썬 한국어 NLP — KoNLPy 0.4.3 documentationKoNLPy: 파이썬 한국어 NLP KoNLPy(“코엔엘파이”라고 읽습니다)는 한국어 정보처리를 위한 파이썬 패키지입니다. 설치법은 이 곳을 참고해주세요. NLP를 처음 시작하시는 분들은 시작하기 에서 가볍게 기본 지식을 습득할 수 있으며, KoNLPy의 사용법 가이드는 사용하기, 각 모듈의 상세사항은 API 문서에서 보실 수 있습니다. >>> from konlpy.tag import Kkma >>> from konlpy.utils import pprinkonlpy-ko.readthedocs.ioKoNLPy는 한국어 정보처리를 위한 ..

파이썬(Python) - 크롤링 연습 ① 사람인 빅데이터 채용 조건 수집

1. 채용 조건 wordcloud로 만들기 browser = webdriver.Chrome('C:/chromedriver.exe') browser.get("http://www.saramin.co.kr/zf_user/search/recruit?search_area=main&search_done=y&search_optional_item=n&searchType=search&searchword=%EB%B9%85%EB%8D%B0%EC%9D%B4%ED%84%B0&recruitPage=1") time.sleep(3) soup = BeautifulSoup(browser.page_source,'html.parser') job = [] for i in soup.findAll('div',class_='item_recruit..

파이썬(Python) - 스크래핑 ③ JSON을 이용한 크롤링

JSON(Java Object Notation) 텍스트 데이터를 기반으로 한다. 자바 스크립트에서 사용하는 객체 표기 방법을 기반으로 한다. 자바스크립트 전용 데이터 형식은 아니고 다양한 소프트웨어와 프로그래밍 언어끼리 데이터 교환할때 샤용을 많이 한다. # 파이썬에서는 json 라이브러리를 기본으로 제공한다. import json import urllib.request as req # url 오픈하고 json 형식으로 불러오기 url = "http://www.krei.re.kr:18181/chart/main_chart/index/kind/W/sdate/2020-01-01/edate/2020-03-31" res = req.urlopen(url) json_obj = json.load(res) json_ob..

파이썬(Python) - 예외사항 처리

예외사항 프로그램 실행중에 발생하는 오류 예외(오류) 종류 Synax Error : 문법오류 print("안녕하세요) Name Error : 참조 변수가 없을때 발생 print(x) Index Error : 인덱스 범위를 잘못지정 했을 때 발생 lst = [1,2,3] lst[3] Key Error : dictionary 형에서 없는 key를 사용할 때 발생하는 오류 dict = {'이름':'홍길동'} dict['이름'] dict['주소'] # 키 미리 확인 dict.get("아이디") dict.get("비번") # 키가 없으면 None / 아무일도 안일어남 Attribute Error : 모듈, 클래스에 잘못된 속성을 참조할때 오류 import datetime datetime.datetime.now()..

파이썬(Python) - 스크래핑 ② 웹 스크래핑/크롤링 연습, wordcloud사용

기본 용어 http(hyper text transfer protocol) hyper text는 마우스로 클릭하면 다른페이지로 이동하는 기능 http는 다음에 나올 html로 작성되어 있는 hyper text를 전송하기 위한 프로토콜(규약, 약속) URL(Uniform Resource Locator) 인터넷 주소 HTML(Hyper Text Markup Language) 웹페이지를 작성하는 문법 언어 F12(개발자 도구)눌러서 볼수 있다. 웹 브라우저(web browser) html을 보기 좋게 출력하는 응용 소프트웨어 웹 스크래핑 연습 BeautifulSoup 데이터를 추출하는데 필요한 기능이 들어 있는 라이브러리, 파싱(parsing)라이브러리 라고도 한다. 파싱은 받아온 데이터에서 필요한 내용만 추출..

반응형