본문 바로가기

반응형

Python/Python Basic

(22)
[unix time] time, datetime, string 변환 방법 유닉스 시간 (unix time)- 유닉스 계열의 운영체제를 사용하는 컴퓨터에서 시간을 표시하는 방법- 1970년 1월 1일 0시 0분 0초 UTC 에서부터 몇 초나 지났는지를 표시한다. [출처] 나무위키: https://namu.wiki/w/%EC%9C%A0%EB%8B%89%EC%8A%A4%20%EC%8B%9C%EA%B0%84위키백과: https://ko.wikipedia.org/wiki/%EC%9C%A0%EB%8B%89%EC%8A%A4_%EC%8B%9C%EA%B0%84 time, datetime, string 변환 방법 1. string to datetimedate_string = "2018-03-05 00:12:00"datetime.datetime.strptime(date_string, '%Y-%m..
[python] dataframe 모든 column, row 보기 with pd.option_context('display.max_rows', None, 'display.max_columns', 3): print(df)pd.set_option('display.max_rows', None)
크롤링(Crawling)_05 (부분 문자열 매칭) 부분 문자열 매칭 ^ 문자열의 시작 $ 문자열의 끝 * 문자열의 부분 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117..
크롤링(Crawling)_04 (함수) 예제 #1. 기사 제목 크롤링 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 def title_matcher(tag): return tag.name == 'h3' def get_news_title(url): res = requests.get(url) html = res.text soup = BeautifulSoup(html, 'html5lib') h3 = soup.find(lambda x : x.name == 'h3') # h3 = soup.find(title_matcher) # h3 = soup.find('h3') return h3.get_text() print(get_news_title('http://media.daum.net/digital/newsview?ne..
크롤링(Crawling)_03 (HTML page crawling 실습) HTML page crawling 실습 - 순서 1. browser로 크롤링 대상 사이트 접속 2. 원하는 data 확인 3. [개발자도구]를 이용하여 request 방식, URL, data의 위치(태그) 확인 4. request 모듈로 request 전송 및 response 처리 ** urllib, urllib2 등 여럿이 존재하지만 여기서는 requests 사용 5. BeautifulSoup 모듈로 response parsing하여 원하는 data 부분을 추출 BeautifulSoup을 이용하여 tag 검색하기 - html 태그를 여러 조건 (class, id 혹은 기타 정보 등)을 이용하여 추출 * find/fild_all 함수 : 태그 검색 조건을 명시하여 태그 (전체) 검색 find - 가장 먼..
크롤링(Crawling)_02 (API를 이용한 크롤링) API(Application Programming Interface) - 특정 프로그램을 만들기 위해 제공되는 모듈(함수 등)을 의미 - WEB에서 사용될 때는 보통 WEB API로 지칭 - 일반적으로 XML, JSON의 형태도 응답을 전달 (원하는 데이터 추출이 수월) *** 코드 200 : 정상 404 : 페이지 요청 오류 403 : 권한없음 500 : 서버에러 Daum API - https://developers.daum.net/console - [웹 검색 가이드 문서] https://developers.daum.net/services/apis/search/web 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 import requests from bs4 import..
크롤링(Crawling)_01 (WEB, HTTP, Crawling의 개념) WWW (World Wide Web) - 도큐먼트(페이지)가 URL로 구별되며, 각 도큐먼트는 다른 도큐먼트의 링크(hypertext)를 갖는 인터넷 상의 공간 - 개념적으로 전 세계의 컴퓨터가 모두 연결되어 접근 가능한 상태의 공간이라 보면 됨 - [참고] https://ko.wikipedia.org/wiki/%EC%9B%94%EB%93%9C%EC%99%80%EC%9D%B4%EB%93%9C%EC%9B%B9 HTTP (HyperText Transport Protocol) - WWW(웹)상에서 문서 전송을 위한 통신규약(protocol) - request(요청) / response(응답) 으로 구성 * browser(클라이언트)가 request(요청)하면 web server(서버)가 HTML 이나 다른 자..
Pickle 모듈 Pickle - python 코드 내에서 파일을 만들고 저장하며 불러올 수 있다. - 일반 텍스트를 파일로 저장할 때는 파일 입출력을 이용한다. 하지만 List나 Class와 같은 텍스트가 아닌 자료형은 일반적인 파일 입출력 방법으로는 데이터를 저장하거나 불러올 수 없다. 파이썬에서는 이와 같은 텍스트 이외의 자료형을 파일로 저장하기 위해 pickle이라는 라이브러리를 제공한다. - python serialization module * 객체를 다시 해당 객체로 변환이 가능한 문자열(byte)로 변환 * 네트워크로 전송 혹은 파일에 저장하기 위해 사용 (객체 자체를 네트워크, 파일에 저장 할 수 없기 때문에) - https://docs.python.org/2/library/pickle.html - dump..