본문 바로가기

파이썬

[웹크롤링] 특정 element 접근하는 코드 6가지 + 클릭하는 방법 웹크롤링을 할 때, 특정 버튼을 클릭하거나 특정 element에 접근할 때 사용할 수 있는 방법이 크게 6가지가 있는데요, 하나씩 살펴보도록 하겠습니다. - find_element_by_ : 특정 element에 접근하기 특정 element에 접근하기 위한 방법으로 'html name', 'id name', 'xpath', 'css', 'class name', 'tag name'을 사용하는 방법이 있는데요, 특정 element에 접근하는 코드인 find_element_by_ 와 결합해 사용하면 됩니다. 결합한 코드는 다음과 같습니다. 1. html name 사용 find_element_by_name('html name') 2. id name 사용 find_element_by_id("html id name.. 더보기
[웹크롤링] 버튼 클릭하는 방법 - xpath (selenium, 크롬 드라이버) 웹크롤링할 때, 페이지에서 버튼을 클릭하는 방법은 다양한데요, 그중에서 많이 사용되는 xpath를 이용한 버튼을 클릭하는 방법에 대해서 살펴보도록 하겠습니다. (selenium, 크롬 드라이버를 사용한다는 가정하에서 설명드리겠습니다.) - xpath : 버튼 클릭하기 먼저, 다음 코드를 입력해서 네이버 홈페이지를 열도록 하겠습니다. from bs4 import BeautifulSoup from selenium import webdriver path = "c:/temp/chromedriver_240/chromedriver.exe" #자신의 chomedriver의 경로 위치 driver = webdriver.Chrome(path) driver.get("https://naver.com") 위 코드를 실행하면 .. 더보기
[웹크롤링] selenium 설치 & 사용 방법 (웹 크롤링 실행 코드) 1. selenium 설치하기 selenium은 웹 크롤러를 만드는데 도와주는 라이브러리로, 사람을 대신해서 주어진 작업을 하는데요, 예를 들어, 크롤링할 명령을 입력하면 사람 대신 직접 페이지를 열고, 지정한 태그 등을 찾아서 데이터를 수집해줍니다. 이러한 selenium 라이브러리는 cmd 창에서 pip install selenium 을 통해 패키지를 설치할 수 있습니다. 2. 웹 브라우저 프로그램 설치하기 selenium을 설치했다면 selenium 패키지가 사용할 웹 브라우저 프로그램을 설치해야 한답니다. 주로 크롬이 만힝 사용되는데요, 크롬은 selenium이 사용하는 프로그램과 다르기 때문에 크롬 드라이버를 설치해야 합니다. 이때 설치한 폴더의 위치와 이름을 기억해야 하는데요, 왜냐하면 웹크롤.. 더보기
[웹크롤링] 두번씩 크롤링 되는 텍스트, 중복 제거하는 방법 - set() 적절한 태그를 찾아 크롤링을 했는데도, 동일한 텍스트가 두 번씩 추출되는 경우가 있을 수 있는데요, 이러한 경우는 속성 태그에 있는 텍스트가 함께 출력되었을 수 있습니다. 따라서 다시 적절한 태그와 속성값을 이용해 텍스트를 크롤링하는 것이 좋은데요, 이 방법 말고도 set() 함수를 이용하여 쉽게 해결할 수 있습니다. set() 함수는 리스트 안에서 중복된 데이터를 제거해주는 함수로, 만약 두 번씩 텍스트가 크롤링되어서 저장되었다면, set() 함수를 통해 중복된 데이터를 모두 제거할 수 있답니다. 먼저, 다음과 같이 텍스트를 크롤링해서 얻은 리스트가 있다고 가정해보겠습니다. list1 = ['사과', '사과', '딸기', '딸기', '바나나', '바나나', '수박', '수박', '포도', '포도'] 위.. 더보기
[웹크롤링] 크롤링해서 얻은 텍스트, 앞 뒤 공백 제거하려면? - strip 크롤링을 하면 주로 텍스트를 추출하게 되는데요, 이때 추출한 텍스트 앞, 뒤로 공백이 같이 추출될 수 있습니다. 이러한 경우 공백을 제거한 뒤 저장하는 것이 나중에 분석 및 처리를 위해서도 좋은데요, 어떻게 하면 앞, 뒤 공백을 제거할 수 있는지 살펴보도록 하겠습니다. - strip() : 문자열 앞 뒤 공백 제거하기 먼저, 다음과 같이 뉴스 기사 제목을 크롤링해서 저장한 리스트가 있다고 가정해보겠습니다. news = [' KBS \'절반 억대연봉\' 사과에…나경원 "수신료인상 반대" ', ' SK하이닉스 성과급 불만에 최태원 "작년 연봉 전부 반납" 선언', " 안철수-금태섭 채널 열렸다…野 '계단식 단일화론' 급물살(종합)" , '與, 법관탄핵안 161명 공동발의…4일 국회통과 유력(종합) ', ' .. 더보기
[데이터분석] matplotlib : 에러바(Errorbar, 오차막대) 그리는 방법 그래프를 보면 오차막대라고도 하는 에러바가 그려진 그래프를 볼 수 있는데요, 이 에러바는 데이터의 편차를 나타냅니다. matplotlib 라이브러리에서도 이 에리바가 그려진 그래프를 그릴 수 있게 함수를 제공하는데요, 어떻게 사용해야 하는지 아래 코드를 보면서 살펴보도록 하겠습니다. - errorbar() : 에러바 그리기 먼저, 간단한 그래프를 그려보도록 하겠습니다. import matplotlib.pyplot as plt x = [1, 2, 3, 4, 5] y = [1, 4, 9, 16, 25] plt.plot(x,y) plt.show() 위 코드에서는 그래프를 그리기 위해 plot() 함수를 사용했는데요, 만약 에러바가 나오는 그래프를 그리려면 errorbar() 함수로 변경하고, 추가로 편차가 입.. 더보기
[데이터분석] matplotlib : 산점도 그래프 그리기 - scatter matplotlib 라이브러리로 산점도 그래프도 그릴 수 있는데요, matplotlib.pyplot 에서 제공하는 scatter() 함수를 이용하여 그릴 수 있습니다. 먼저, x축 데이터와 y축 데이터는 랜덤으로 난수를 100개씩 생성하겠습니다. import matplotlib.pyplot as plt import numpy as np np.random.seed(0) N = 100 x = np.random.rand(N) y = np.random.rand(N) 한편, scatter() 함수를 이용하여 산점도 그래프를 그리기 전, 색깔과 산점도 영역을 랜덤으로 지정해주어야 하는데요, 다음과 같이 입력하면 됩니다. colors = np.random.rand(N) area = (30 * np.random.ran.. 더보기
[데이터분석] matplotlib : 타이틀(제목) 위치 설정하는 방법 - title matplotlib 라이브러리는 그래프를 쉽고 간단하게 그릴 수 있도록 기능을 제공하는 라이브러리인데요, 이번 글에서는 그래프에서 타이틀을 설정하고, 위치를 설정하는 방법에 대해서 살펴보도록 하겠습니다. 1. 타이틀 설정하기 우선, 그래프를 그려보도록 하겠습니다. import matplotlib.pyplot as plt x = [1, 2, 3, 4, 5] y = [1, 4, 9, 16, 25] plt.plot(x,y) plt.show() 위 그래프는 타이틀이 설정되어 있지 않은 상태인데요, title() 함수를 추가해서 제목을 지정해보겠습니다. import matplotlib.pyplot as plt x = [1, 2, 3, 4, 5] y = [1, 4, 9, 16, 25] plt.plot(x,y) pl.. 더보기
[데이터분석] matplotlib : 원형 마커로 그래프 나타내기 matplotlib 라이브러리로 그래프를 그릴 때, 특정한 설정이 없다면 선 그래프로 그려지는데요, 그래프를 원형 마커가 표시된 그래프로 나타낼 수 있답니다. 한번 아래 코드를 보면서 살펴보도록 하겠습니다. 먼저, 아래와 같이 기본적인 그래프를 그려보도록 하겠습니다. import matplotlib.pyplot as plt x = [1, 2, 3, 4, 5] y = [1, 4, 9, 16, 25] plt.plot(x,y) plt.show() 그래프를 그리는 함수로 plot(x, y) 함수를 사용했는데요, 기본적으로 선 그래프로 나오는 것을 확인할 수 있습니다. 만약, 원형 마커로 찍힌 그래프로 그리고 싶다면 아래 코드처럼 plot() 함수를 plot(x, y, 'bo') 로 변경해서 입력하면 됩니다. i.. 더보기
[데이터분석] matplotlib : 사용 가능한 색깔, 선 종류, 마커 종류 표시 형식 알아보기 matplotlib 라이브러리는 그래프를 쉽고 간단하게 그릴 수 있게 도와주는 라이브러리로, 다양한 색깔과 선 종류, 그리고 여러 마커 종류를 사용하여 그래프를 그릴 수 있습니다. 하지만 사용 가능한 색깔이나 선 종류 또는 마커 종류를 모르면 그만큼 그래프를 다양하게 그릴 수 없습니다. 따라서 어떠한 색깔이 있고, 어떠한 선 종류와 마커 종류가 있는지 알아두는 게 많은 도움이 될 수 있습니다. 1. Colors 먼저 사용가능한 색깔은 다음과 같습니다. 표시 형식 color 'b' blue 'g' green 'r' red 'c' cyan 'm' magenta 'y' yellow 'k' black 'w' white 2. Line 그다음으로, 사용 가능한 선 종류는 다음과 같습니다. 표시 형식 설명 '-' s.. 더보기