본문 바로가기
반응형

● 크롤링, 자동화59

조코딩AI.1 : 텍스트 및 이미지 크롤링하기. BeautifulSoup Q> selenium, BeautifulSoup의 차이점? 왜 동적인 네이버실검은 selenium으로만 되는가? - BS : HTML 및 XML 파일에서 데이터를 가져 오는 Python 라이브러리 Selenium으로 무적 크롤러 만들기 · GitBook Selenium은 주로 웹앱을 테스트하는데 이용하는 프레임워크다. webdriver라는 API를 통해 운영체제에 설치된 Chrome등의 브라우저를 제어하게 된다. 브라우저를 직접 동작시킨다는 것은 JavaScript를 이용 beomi.github.io [조코딩] 완성형 서비스 만들기 - 1 참고: 조코딩 - 완전 쉽게 파이썬으로 텍스트 및 이미지 크롤링하기 | 완성형 서비스 만들기 1강https://www.youtube.com/watch?v=ZTJjW7X.. 2020. 5. 19.
[김플 스튜디오] 구글 로그인, 메일 보내기 자동화 (selenium, webdriver, actionchains) 실습 전 할 것 1. 내 크롬브라우저에 맞는 크롬드라이버를 다운 2. 실습하고자 하는 파이썬 파일에 해당 크롬 드라이버를 넣고 실습시작 => 실습(실행)파일과 동일한 루트에 넣으면 따로 루트 지정필요없이 => driver = webdriver.Chrome()만으로 실행가능 다음 코드를 입력 from selenium import webdriver from selenium.webdriver.common.keys import Keys from selenium.webdriver.common.action_chains import ActionChains # 쭉 연결할 수 있게함 import time driver = webdriver.Chrome() url = "https://google.com" driver.get.. 2020. 5. 6.
[김플 스튜디오] selenium : 크롬 검색 자동화 오류 from selenium import webdriver driver = webdriver.Chrome() 까지 입력하자 오류 해결 검색진행 내 크롬브라우저환경에 맞는 chromedriver다운 후 해당 주소 복사 정상 실행 크롬드라이버의 위치를 삽입 후 정상 실행 from selenium import webdriver driver = webdriver.Chrome(executable_path=r"C:\dev_python\Webdriver\chromedriver") url = 'https://google.com' driver.get(url) 코드 실행 (자동화 브라우저 작동) 구글 검색창의 클래스 확인 검색창 클래스 활용한 자동 검색어 입력 전체 코드에 하단 코드 추가 driver.find_eleme.. 2020. 5. 6.
[조코딩] 제이쿼리라는 js함수 라이브러리 활용하기, 제이쿼리ui, 부트스트랩 함수 먼저 기본 양식부터 만들자 index.html 형성 후 ! + tab키를 눌러주면 html 기본 양식이 만들어진다 제이쿼리 : https://jquery.com/ jQuery What is jQuery? jQuery is a fast, small, and feature-rich JavaScript library. It makes things like HTML document traversal and manipulation, event handling, animation, and Ajax much simpler with an easy-to-use API that works across a multitude of browsers. jquery.com 제이쿼리 사이트에서 제이쿼리를 다운로드해서 제이쿼리를 사용.. 2020. 4. 30.
[조코딩][web basic2] 조코딩 / 도메인 변경하기 임시 이메일 만들기 내 도메인 목록 지난 시간에 만든 도메인과 연결하기 GABIA 가비아에선 다음과 같이 DNS관리에서 설정해주면 된다 https://m.blog.naver.com/superc_official/221851742848 자 이제 다시 netlify로 가보자 새로 고침으로 확인하면 된다 2020. 4. 27.
[조코딩][web basic1] 네이버 검색 엔진에 최적화 시키기 여기서 잠깐! 지금은 연동 사이트 목록 화면이 바로 안뜬다. 여기로 가야한다 : https://searchadvisor.naver.com/console/board SEO 등록하기, 검색엔진 최적화 여기서 잠깐! 사이트가 바뀌어서 이젠 자동으로 robots.txt를 만들어주지 않는다. 고로 가이드를 참고해서 메모장에 직접 만드는 방법을 써야 한다. https://www.xml-sitemaps.com/ 2020. 4. 27.
[잔재미코딩] 7. 한빛미디어 페이지 실전 크롤링 쿠키와 세션 찾기 2020. 3. 12.
[잔재미코딩] 6. 로그인이 필요한 페이지 크롤링하기 로그인이 되어야만 볼수있는페이지에선 일반적인 방식으론 크롤링이 안된다. 그럼어떻게해야할까? 우선 쿠키와 세션에 대해 알아야한다. 클라이언트에서 요청할때 로그인할때는 쿠키와 세션이 함께 들어가서 요청된다. 아참! 이때 HTTP프로토콜방식으로 주고받는데(요청을할때 요청을만드는 포맷이 있고 응답도 특별한 포맷이있다) 이 때의 기본 포맷이 헤더와 바디 로그인이 필요할경우 헤더에 특별한 정보(쿠키/세션)를 포맷에 맞춰 요청한다. 아이디정보를 자기 피씨, 웹브라우저안에 저장가능 그리고 해당 웹페이지의 URL을 전송할 때 해당 아이디를 헤더에 넣어서 보냄(이를 쿠키라고함.) 쿠키란 아이디와 값처럼 구별할 수 있는 정보를 자기피씨안에 넣은상태. 특히 웹에서 저장관리하는 파일안에 있음 서버는 요청받은 헤더부분을 파악하고.. 2020. 3. 10.
[잔재미코딩] 4. 게시판 크롤링, 반복문, 엑셀파일 정리 1. 긁어올 게시판의 페이지는 1~5페이지까지. 그런데 각 페이지별로 들어갈 때마다 다음처럼 url에서 숫자만 바뀐다 이건 엑셀 파일을 만드는 코드~ 이건 크롤링하는 코드! 엑셀코드와 크롤링 코드를 합쳐보자 결과 화면! 우선 제목행인 B행의 너비를 정하자 이제는 순번을 만들어 줄 코드를 넣어주자 이제 엑셀행의 타이틀을 만들자 제목행의 위치인 A1,B1의 행렬을 중앙배열로 지정하자 시트이름 정하기, 시트삭제하기 작성된 시트 오픈하기 2020. 3. 4.
[잔재미코딩] [오류해결] 인코딩 문제가 발생하면 urllib를 쓰라! 2020. 3. 4.
[잔재미코딩] 3. naver stock_select, 2차 필터하기 링크 해외증시 : 네이버 금융 관심종목의 실시간 주가를 가장 빠르게 확인하는 곳 finance.naver.com 추가적으로 시도했던 크롤링> 출력대상을 담은 태그 각 출력대상 위 대상을 뽑고 싶은데 못 뽑음. 하단 코드는 다른 코드임 위 copy selector를 하단과 같이 요약해줘도 정상적으로 출력된다. 위처럼 붙어있는 상태로 나와서 구분하기 어렵다 이때는 copy element를 해준다. 그런데 첫번째 리스트와 2번쨰 리스트의 아이디가 다르다 span클래스와 em클래스가 다르다. 상승,하락에 따라 class가 달라진다 다우산업 26,957.59 하락 나스닥 8,980.78 상승 그리고 위와 같이 태그별로 분리한 뒤 어떻게 할지 생각해보자 select로 뽑은 데이터도 다시 find나 select로 2.. 2020. 2. 27.
[잔재미코딩] 2-1 select를 활용한 크롤링 2020. 2. 26.
[잔재미] 파이썬을 이용한 웹 크롤링(Web Crawling) 어플리케이션 만들기. 4강 뷰티풀소프> 파서역할이 강함 html문서에서 정볼르 가져올때 네비게이션이 잘됨 자동으로 웹 유니코드 변환하여 출력함 한국은 특별한 인콛ㅇ 을 사용해서 데이터가 깨진경우가 있는데 이걸 쓰면 덜 겪음 데이터를가져올때 데이터를 가져올때 유니코드롤 한번변환하면 별 탈없이 사용가능 스크래피> 기능더많음 웹에서 데이터를 들고와서 처리함 프레임웍형태 전체적인 웹으로 가져오김 파이프라인통해 후처리, 필터링해줌 로깅정보를 통해 잘 처리되고있는지 확인가능 이 기능들을 뷰티풀에서 쓸 수있지만 따로 만들어줘야함 뷰티풀소프사용하기 www.crummy.com 에서 사용방법 볼 것 from vs4 import beautifulsoup soup = beautifulsoup(html_doc, 'html-parser') #문서:html.. 2020. 1. 13.
[잔재미] 파이썬을 이용한 웹 크롤링(Web Crawling) 어플리케이션 만들기. 3강 OS : Ubuntu 16.04 # 서버는 리눅스,우분투에서 많이 다룸 Language : Python2.7 Library : BeautifulSoup, Scrapy etc : virtualenv, virtualenvwrapper (python은 버전별로 lib달라, lib따라 버전맞춰줘야하는 문제. 이를 편하게 하기 위해 가상환경사용, 문제발생시 가상환경만 지우면됨) 순서는 다음과 같다. 아, 그리고 sudo 를 이용해서 설치하는 패키지들은 pip과는 다르게 리눅스환겨전체에 설치되는 것임 1. sudo apt-get install update 2. sudo apt-get install build-essential # 개발위한 기본패키지, 기본 라이브러리 존재 3. sudo apt-get install .. 2020. 1. 13.
[FC] 14. 크롤링 자료 엑셀저장 / openpyxl / load_workbook / 1. 웹 자원 요청 결과를 숫자로 나타낸 것을 ___ 2. 웹 자원 요청시 ___ 번 응답 코드가 돌아오면 요청 정상 처리 1. http 상태 코드 (응답코드) 2. 200 웹과 관련된 선행지식이 있어야 크롤링할 수 있다. 엑셀파일로 저장하자 우선 이전에 작성한 py와 동일한 위치에 빈 엑셀파일(rank.xlsx)을 만들자 엑셀 파일을 다루기 위해 from openpyxl import load_workbook as load 를 추가하고 엑셀파일위치도 입력하자 SAVE_DIR = "c:/Users/last2018/dev/python/basic/11 crawler/rank.xlsx" 이제 엑셀파일을 저장하는 함수를 만들어보자 그리고 실행시켜주면 엑셀파일에 저장된 것을 확인할 수 있다. import reque.. 2019. 6. 30.
[FC] 12. 태그없앤 상세한 크롤링 / BeautifulSoup / select / find_all / get_text() 1. ___ 은 웹 상에 산재된 여러 정보를 긁어오는 것을 의미 2. ___ 라이브러리를 통해 웹 자원 요청 3. ___ 라이브러리를 통해 html 코드 파싱 4. 개발자 도구의 ___ 기능을 이용해 선택자 문법 확인 가능 1. 크롤링 2. requests 3. bs4 4. Copy 이번에는 2단계인 크롤링 코드를 작성해볼 것 BeautifulSoup 우선 BeautifulSoup라는 크롤링의 주요 모듈에 대해 알아보자 요청받은 웹 정보를 html로 파싱하고 나서 파싱한 자원 분석하는 bs4 라이브러리(패키지)의 모듈이다. BeautifulSoup 모듈의 주요 메서드 find 하나의 태그 찾기 find_all 여러 태그 찾기(리스트) select 선택자 문법으로 여러 태그 찾기 특정 부분 크롤링 지난 시.. 2019. 6. 30.
[FC] 10. 파이썬 말뭉치 처리 / konlpy / Okt / pos / nouns 1. ___ 라이브러리를 통해 엑셀 파일 처리 가능 2. 엑셀 파일 처리 위해 ___ 단위로 처리 가능 1. openpyxl 2. cell 말뭉치? corpus 자연어 처리 위한 분류된 언어의 표본 집합 언어의 빈도와 분포도를 확인할 수 있는 자료를 말함 자연어 연구 위해 특정한 목적을 가지고 언어의 표본을 추출한 집합 konlpy 한국어 말뭉치 처리위한 패키지 모음. 오픈소스 한국어사이트 깃허브 konlpy설치하기 pip3 install konlpy konlpy중에서 사용할 Okt(Open Korean Text)패키지. Okt(Open Korean Text) 주요 메서드 2가지 pos (문자열, 품사)를 튜플로 반환 nouns 문자열의 명사 리스트로 반환 konlpy를 설치부터하고 진행해보자 혹시라도 .. 2019. 6. 27.
[FC] 8. 예외처리 / 문법 에러 / try ~ except / finally / raise Exception 1. ___ 은 함수 선언 키워드 2. ___ 은 인자에는 있지만 사용되지 않을 경우 기본 값 3. ___ 은 인자의 값을 특정 지을 수 없을 경우 사용 4. ___ 은 인자의 별칭을 붙여서 사용하는 방법 1. def 2. 기본 인자 3. 가변 인자 4. 이름있는 인자 예외처리 프로그램 오류를 핸들링 하는 방법 예외발생시 취할 행동을 코드로 작성 문법 에러와 예외의 차이점 문법 에러? 개발자의 잘못된 파이썬 코드(문법) 작성 예외 문법적 오류는 없지만 실행 중 발생하는 에러 예외처리가 필요한 이유 코드를 실행하다가 에러로 인해 종료되는 것을 방지하기 위함 실행이 오래걸리거나 중요한 작업시 종료되지 않도록 하기 위함 try ~ except 구문 try : 실행코드 ◁- 에러 가능성 존재 except : 예.. 2019. 6. 26.
반응형