본문 바로가기
728x90
반응형
SMALL

전체 글1632

[Web Crawler] YouTube 리뷰 수집용 웹 크롤러 만들기 YouTube 리뷰 수집용 웹 크롤러 만들기 from bs4 import BeautifulSoup from selenium import webdriver import time import sys import math import re import numpy import pandas as pd import xlwt import random import os # 사용자에게 필요한 정보 얻기 query_txt = input("youtube에서 검색할 주제 키워드 입력(예:내셔널지오그래픽): ") cnt = int(input('위 주제로 댓글을 크롤링할 youtube 영상은 몇 건?: ')) reple_cnt = int(input('각 동영상에서 추출할 댓글은 몇 건?: ')) f_dir = input("크롤링.. 2022. 2. 18.
[Web Crawler] 데이터 수집용 웹 크롤러 만들기 (2) 데이터 수집용 웹 크롤러 만들기 # 필요한 모듈과 라이브러리 로딩 from bs4 import BeautifulSoup from selenium import webdriver import time import sys import re import math import numpy import pandas as pd import xlwt import random import os # 크롤링 정보 입력 print("=" *80) print("서울시 응답소 게시판 크롤링") print("=" *80) query_txt = '서울시 응답소' cnt = int(input('1. 크롤링 할 건수 입력 : ')) page_cnt = math.ceil(cnt / 10) f_dir = input("2. 결과 파일을 저장할.. 2022. 2. 16.
[Web Crawler] 데이터 수집용 웹 크롤러 만들기 (1) 데이터 수집용 웹 크롤러 만들기 2022. 2. 16.
[Web Crawler] 특정 게시글의 상세 내용 수집하기 특정 게시글의 상세 내용 수집하기 2022. 2. 16.
[Web Crawler] 다양한 유형의 파일로 저장하기 (csv, xls, txt) 다양한 유형의 파일로 저장하기 (csv, xls, txt) from bs4 import BeautifulSoup from selenium import webdriver import time import sys query_txt = input('크롤링할 키워드 : ') f_name = input('검색 결과를 저장할 txt 파일경로와 이름 지정 (ex. c:\\temp\\test.txt): ') fc_name = input('검색 결과를 저장할 csv 파일경로와 이름 지정 (ex. c:\\temp\\test.csv): ') fx_name = input('검색 결과를 저장할 xls 파일경로와 이름 지정 (ex. c:\\temp\\test.xls): ') # 크롬 드라이버를 사용하여 웹 브라우저 실행 path.. 2022. 2. 16.
[Web Crawler] 조회결과를 수집하고 txt 파일로 저장하기 웹페이지 데이터 추출 # 필요한 모듈과 라이브러리를 로딩하고 검색어 입력 from bs4 import BeautifulSoup from selenium import webdriver import time import sys query_txt = input('크롤링할 키워드 입력: ') f_name = input('검색 결과를 저장할 파일경로와 이름 지정(예 : /Users/test.txt)') # 크롬 드라이버 사용해서 웹 브라우저 실행 path = "/Users/chromedriver" driver = webdriver.Chrome(path) driver.get("https://korean.visitkorea.or.kr/main/mian.html") time.sleep(2) # 창이 모두 열릴 때까지 .. 2022. 2. 16.
[Pandas] 데이터프레임 인덱스 조작 데이터프레임 인덱스 설정 및 제거 데이터프레임에 인덱스로 들어가 있어야 할 데이터가 일반 데이터 열에 들어가 있거나 반대로 일반 데이터 열이어야 할 것이 인덱스로 되어 있을 수 있다. 이때 set_index 명령이나 reset_index 명령으로 인덱스와 일반 데이터 열을 교환할 수 있다. set_index : 기존의 행 인덱스를 제거하고 데이터 열 중 하나를 인덱스로 설정 reset_index : 기존의 행 인덱스를 제거하고 인덱스를 데이터 열로 추가 np.random.seed(0) df1 = pd.DataFrame(np.vstack([list('ABCDE'), np.round(np.random.rand(3, 5), 2)]).T, columns=["C1", "C2", "C3", "C4"]) df1 se.. 2022. 2. 16.
[Pandas] 데이터프레임의 데이터 조작 데이터프레임의 데이터 조작 Pandas는 Numpy 2차원 배열에서 가능한 대부분의 데이터 처리가 가능하며 추가로 데이터 처리 및 변환을 위한 다양한 함수와 메서드를 제공한다. 데이터 갯수 세기 가장 간단한 데이터 분석은 데이터의 갯수를 세는 것이다. count 메서드를 사용한다. NaN 값은 세지 않는다. s = pd.Series(range(10)) s[3] = np.nan s --- 0 0.0 1 1.0 2 2.0 3 NaN 4 4.0 5 5.0 6 6.0 7 7.0 8 8.0 9 9.0 dtype: float64 s.count() --> 9 데이터프레임에서는 각 열마다 별도로 데이터 갯수를 센다. 데이터에서 값이 누락된 부분을 찾을 때 유용하다. np.random.seed(2) df = pd.Dat.. 2022. 2. 16.
[Web Crawler] 셀레니움 (Selenium) (4) 자바스크립트 코드 실행 1. 스크롤 이동 # 브라우저 스크롤 최하단으로 이동 driver.execute_script('window.scrollTo(0, document.body.scrollHeight);') # CSS 셀렉터로 클릭 driver.execute_script("document.querySelector('body > div.modal-options__buttons > button.btn.btn-primary').click();") # 또는 elemToclick = driver.~~~ driver.execute_script('arguments[0].click();', elemToclick) # driver.find_element_by_css_selector(~~).click()과 동일하나 이 코.. 2022. 2. 15.
[Web Crawler] 셀레니움 (Selenium) (3) 경고창 (alert) 경고창이 떴을 때 수락 또는 거절을 눌러주거나 경고창의 텍스트를 가져올 수 있다. # 경고창으로 이동 driver.switch_to.alert from selenium.webdriver.common.alert import Alert Alert(driver).accept() # 경고창 수락 누름 Alert(driver).dismiss() # 경고창 거절 누름 print(Alert(driver).text # 경고창 텍스트 얻음 쿠키값 # 쿠키값 얻기 driver.get_cookies() # 쿠키 추가 driver.add_cookie() # 쿠키 전부 삭제 driver.delete_all_cookies() # 특정 쿠기 삭제 driver.delete_cookie(cookiename) Wa.. 2022. 2. 15.
728x90
반응형
LIST