728x90
반응형
SMALL

파이썬(Python) 75

[ 크롤링-Selenium, BeautifulSoup ] 파이썬 Selenium과 BeautifulSoup 함께 사용하기

◆ Selenium과 BeautifulSoup 함께 사용하기 Selenium과 BeautifulSoup를 함께 사용하는 방법입니다. 먼저 기존과 동일하게 Selenium으로 웹브라우저를 호출합니다. from selenium import webdriver from webdriver_manager.chrome import ChromeDriverManager from selenium.webdriver.chrome.service import Service from bs4 import BeautifulSoup service = Service(ChromeDriverManager().install()) driver = webdriver.Chrome(service=service) url = "https://www.da..

파이썬(Python) 2022.10.21

[ 크롤링-Selenium ] 파이썬 유튜브 크롤링 결과 엑셀파일 저장하기

◆ 준비사항 : openpyxl 파이썬으로 엑셀을 다루기위해 openpyxl을 설치해 줍니다. 콘솔창에 pip install openpyxl 을 입력하고 설치합니다. 그리고 openpyxl을 import 해줍니다. from openpyxl import Workbook ◆ 엑셀파일 만들고 크롤링 결과 저장하기 먼저 Workbook() 객체를 생성합니다. wb = WorkBook() 그리고 현재 워크북에서 활성화 된 시트를 선택합니다. 엑셀파일이 처음 만들어 졌으니 첫번째 시트가 선택될겁니다. ws = wb.active 선택된 시트의 이름을 YouTube로 바꾸어 보겠습니다. 굳이 바꾸지 않더라도 실행하는 데에는 문제가 없습니다. ws.title = "YouTube" 그리고 맨 위에 구분하기 제목을 써줍니다..

파이썬(Python) 2022.10.20

[ 크롤링-Selenium ] 파이썬 유튜브 제목과 URL 크롤링

◆ 웹 페이지 소스코드 확인하기 먼저 유튜브에 파이썬으로 검색한 후 [ F12 ]를 누르면 위와 같은 화면이 나타납니다. 위쪽 중간의 빨간색 네모 안의 아이콘을 누른 후 왼쪽 화면의 파란색 화면 부분을 눌러보시면 오른쪽 화면의 파란색 부분에 표시가 됩니다. 우선 오른쪽 화면의 표시된 부분이 왼쪽 화면의 제목에 해당하는 부분으로 보입니다. 다음으로 검색된 결과를 보니 동영상[파란색 네모 부문]도 있고 플레이리스트[보라색 네모 부문]도 있습니다. 우선은 플레이리스트를 제외하고 동영상의 제목과 URL을 가지고 올 생각이므로 두개의 차이점을 찾아보겠습니다. 왼쪽은 동영상에 해당하는 부분의 소스코드이고 오른쪽은 플레이리스트에 해당하는 부분의 소스코드입니다. 동영상은 로 감싸져 있고 플레이리스트는 로 감싸져 있습니..

파이썬(Python) 2022.10.19

[ 크롤링-Selenium ] 파이썬 셀레니움 웹페이지 자동 스크롤 하기(Python Selenium scroll webpage)

◆ 웹 페이지 자동 스크롤 하기 웹페이지를 방문하다 보면 보통은 페이지를 클릭해서 다음 페이지로 넘어가게 되어 있는 곳들이 많습니다. 아래 그림과 같이요. 하지만 네이버 이미지나 구글 이미지 검색 또는 유튜브를 보면 마우스를 스크롤하여 다음 페이지로 넘어갑니다. 이럴경우 충분히 스크롤하여야만 원하는 정보를 최대한 많이 가지고 올 수 있습니다. 웹 페이지를 스크롤 하는 코드는 다음과 같습니다. driver.execute_script("window.scrollTo(0, document.documentElement.scrollHeight);") 또는 driver.execute_script("window.scrollTo(0, document.body.scrollHeight);") 위 코드를 작성하고 실행하면 현..

파이썬(Python) 2022.10.18

[ 크롤링-Selenium ] 웹 크롤링 파이썬 네이버 페이지 클릭하기, 검색어 입력하기

◆ 네이버에 접속하기 웹페이지에 있는 정보를 가지고 오기 위해서는 먼저 웹페이지에 접속을 해야 합니다. selenium을 사용할 것입니다. 먼저 지난번에 포스팅 했던 글을 참고하여 기본 코드를 작성하겠습니다. from selenium import webdriver from webdriver_manager.chrome import ChromeDriverManager from selenium.webdriver.chrome.service import Service driver = webdriver.Chrome(service=Service(ChromeDriverManager().install())) 먼저 우리가 자주 사용하는 네이버의 주소를 알아보겠습니다. 위 그림의 빨간색 네모 부분이 네이버의 주소입니다. 위..

파이썬(Python) 2022.10.14

[ 크롤링-Selenium ] 웹 크롤링 파이썬 셀레니움 webdriver 자동 설치(Python selenium webdriver auto-install)

◆ webdriver 설치의 번거로움 웹 크롤링에 selenium을 많이 사용합니다. 하지만 selenium은 chrome이나 edge 등 자신이 사용하는 브라우저가 업데이트 되었을 경우 webdriver도 다시 설치 해야한다는 번거로움이 있습니다. 처음 접하시는 분들은 위에서 한 말이 어떤 내용인지 이해가 잘 안가실 수 있습니다. selenium은 크롤링을 할 때 사용되는데 selenium을 사용하기 위해서는 webdriver를 다운받아 설치해 주어야 합니다. webdriver는 사용하는 브라우저(크롬, 엣지 등)의 버전에 따라 맞게 설치해 주어야 합니다. 문제는 브라우저의 업데이트가 매우 빈번하게 발생합니다. 브라우저가 업데이트 되었을 때 지난 버전의 브라우저를 이용하여 웹 크롤링을 하는 코드가 작동..

파이썬(Python) 2022.10.11

[ pyautogui ] 파이썬 마우스 이동하기, 클릭하기(pyautogui mouse move, click)

아래 예제는 화면에 계산기를 띄워놓고 하셔야 합니다.(지난번 작성한 글과 연결이 됩니다.) ◆ 마우스 이동하기 pyautogui를 사용하면 마우스 이동이 가능합니다. 마우스 이동을 위해서는 moveTo() 함수를 사용합니다. T 가 대문자여야 하니 주의하세요 import pyautogui btn_find = pyautogui.locateOnScreen("9.png") center = pyautogui.center(btn_find) pyautogui.moveTo(center) 앞서 작성했던 코드에서 마지막 줄과 같이 코드를 삽입하면 해당 위치로 마우스가 이동하게 됩니다. 해당 이미지의 가운데 좌표값(center)을 받아 moveTo 함수의 인자로 전달하는 코드입니다. moveTo 함수는 해당 좌표(절대좌표..

파이썬(Python) 2022.10.04

[ pyautogui ] 파이썬 이미지 찾아 클릭하기(Python pyautogui)

◆ 준비사항 pyautogui 설치 : pip install pyautogui 참고사항 코드를 작성하고 실행을 했을 때 아래와 같은 에러가 출력될 수도 있습니다. locateonscreen 함수를 사용할 때 발생하는 것 같습니다. the pillow package is required to use this function. 이 경우 아래와 같이 pillow 패키지를 설치해주시면 됩니다. pip install pillow ◆ 이미지 찾기 먼저 찾을 이미지를 만들어서 파이썬 파일과 같은 폴더에 저장을 해줍니다. 계산기를 샘플로 하겠습니다. 위 그림에서 테두리는 이미지 크기를 보여드리기 위해 일부러 두른 것입니다. 실재 이미지에는 테두리가 없습니다. 위 이미지를 [ 9.png ]로 저장합니다. 이제 코드를 작..

파이썬(Python) 2022.10.03

[ Tkinter ] 파이썬에서 파일 선택창 열기(Python filedialog)

◆ tkinter 모듈 설치하기 pip install tk ◆ tkinter.filedialog 모듈 import from tkinter import filedialog ◆ filedialog 모듈 안의 askopenfilename() 함수 호출 filename = filedialog.askopenfilename() ◆ 전체코드 from tkinter import filedialog filename = filedialog.askopenfilename() print(filename) 위 코드를 실행하면 결과는 다음과 같습니다. 빨간색 네모 박스 부분은 우선 제외하고 보면 익숙한 윈도우 탐색기 창이 나타나게 됩니다. 파일을 하나 선택하고 [ 열기 ]를 누르면 C:/Program Files (x86)/Star..

파이썬(Python) 2022.09.28

[ Basic ] 파이썬 리스트 데이터타입, 파이썬 리스트 복사하기

◆ 리스트와 튜플의 데이터 타입 앞에서 언급한 리스트와 튜플은 어떤 데이터 타입이라도 포함할 수 있습니다. 그 말은 튜플이 리스트를 포함할 수도 리스트가 튜플을 포함할 수도 있다는 의미입니다. 물론 리스트 안에 리스트를 넣을 수도 있고 튜플 안에 튜플을 넣을 수도 있습니다. a = [ 1, 2 ] b = [ 3, 4 ] print(type(a), type(b)) 위 코드를 실행해 보면 a, b 모두 리스트라는 것을 확인할 수 있습니다. a = [ 1, 2 ] b = [ 3, 4 ] c = [ a, b ] print(type(a), type(b), type(c)) 위 코드에서 c 역시 리스트입니다. 그럼 c 에는 어떤식으로 값이 들어있는지 살펴보겠습니다. a = [ 1, 2 ] b = [ 3, 4 ] c ..

파이썬(Python) 2022.09.20
728x90
반응형
LIST