cs 19

[크롤링] 목록 범위 설정하고 동적페이지에서 범위 찾기

#----------------selenium 설정 from selenium import webdriver from selenium.webdriver.chrome.service import Service from webdriver_manager.chrome import ChromeDriverManager from selenium.webdriver.common.by import By #find_element 함수 chrome_options = webdriver.ChromeOptions() chrome_options.add_experimental_option("detach", True) #페이지가 자동으로 꺼지지 않게 해줌 driver = webdriver.Chrome(service=Service(Chrom..

cs/크롤링 2023.03.27

[크롤링] iframe

url = 'https://prstaff.sogang.ac.kr/prstaff/index.html' driver.get(url) sleep(1) driver.find_element(By.XPATH, '/html/body/div/ul/li[1]/a').click() 위의 간단한 코드가 작동이 안되었다. 원인은 " Message: no such element: Unable to locate element: {"method":"xpath","selector":"/html/body/div/ul/li[1]/a"} " 라고 한다. 한마디로 나는 로그인을 눌러달라고 하였는데 로그인 버튼이 어딨는지 모른다는 것이다. 친절하게 XPATH 도 적어줬건만! 바보! 이를 통해 iframe 이라는 것에 대해 알게 되었다. if..

cs/크롤링 2023.03.27

[크롤링] 하늬가람 페이지 크롤링해보자

내가 원래 크롤링을 시작했던 이유는 하늬가람 페이지를 크롤링해 또 다른 프로그램을 만들고 싶었기 때문이다. 그럼 앞서 배운 내용을 바탕으로 크롤링 해보자 https://hanigaram.sogang.ac.kr/front/cmsboardlist.do?siteId=hanigaram&bbsConfigFK=1301 학생홍보대사 하늬가람 - 공지사항 1 2 3 4 5 6 7 8 9 10 / 10 hanigaram.sogang.ac.kr 이 공지사항에 있는 목차 제목을 크롤링하고자 하였다. 내가 크롤링하고자 하는 페이지의 소스는 이렇게 구성되어 있었다. div(class = list_box) - ul - 여러개의 div - 여러개의 a (원하는 내용) 사실 중간에 왜 div 를 한 번 더 썼는지 모르겠다. 개발자 ..

cs/크롤링 2023.03.20

[크롤링] selenium 안녕 ,,?

selenium 을 깔아보자! 먼저 크롬 드라이브를 깔아야 한다. 크롬 드라이브는 본인의 크롬 버전과 같은 버전으로 다운로드 해야 하는데, 크롬에 chrome://version/ 을 입력하면 본인의 크롬 버전이 나온다. 이런 것도 있었고만 https://sites.google.com/chromium.org/driver/ ChromeDriver - WebDriver for Chrome WebDriver is an open source tool for automated testing of webapps across many browsers. It provides capabilities for navigating to web pages, user input, JavaScript execution, and mo..

cs/크롤링 2023.03.20

[크롤링] 네이버 홈화면의 메뉴를 가져와보자

! 새롭게 알게 된 점 ! 보통 이런 형식으로 웹의 트리가 쌓여있다는 점 책에서 이런 것도 안알려주구 ㅠ - 네이버 홈화면의 메뉴를 가져와보자 여기서 초록색 부분! 네이버의 웹소스는 이렇게 구성되어 있다. 'ul' 에서 각 'li' 들에 메뉴 이름이 쓰여있었다. 우선 'ul'에서 'li' 소스 들을 뽑아 그 안에서 a 태그들의 text 를 뽑아주도록 하겠다. from urllib.request import urlopen from bs4 import BeautifulSoup html = urlopen('https://www.naver.com') bs = BeautifulSoup(html, 'html.parser') ul = bs.find('ul',{'class' : 'list_nav'}) #print(ul..

cs/크롤링 2023.03.13

[크롤링] 할리스 매장 위치 정보 크롤링 해보기 (pandas / del[:])

할리스의 매장 정보를 크롤링하여 워드에 작성해보자! https://www.hollys.co.kr/store/korea/korStore2.do 할리스 HOLLYS www.hollys.co.kr 할리스의 매장찾기 페이지 소스를 살펴보니 위와 같은 코드로 정리하고 있었다. tr 로 매장을 나누어 그 안에 지역, 매장명, 현황, 주소, 매장 서비스, 전화번호로 나누어 코드를 작성하였다. 실제로 청주율량현대점과 연세대학교원주장례식장점처럼 실제로 나누고 있었다. from urllib.request import urlopen from bs4 import BeautifulSoup import pandas as pd import datetime def hollys(result): html = urlopen('https:..

cs/크롤링 2023.03.08

[크롤링] 크롤링 시작하기 (페이지에 있는 링크 목록 가져오기/attrs/웹사이트를 무작위로 이동/딥 웹, 다크 웹, 히든 웹/웹스크레이핑/외부Url,내부 Url)

[파이썬으로 웹 크롤러 만들기 - 라이언 미첼, 한빛미디어] 의 내용을 바탕으로 공부한 내용입니다. 작성한 글의 모든 저작권은 한빛미디어에 있습니다. part1. 크롤링 시작하기 - chapter 3 - 페이지에 들어있는 링크 목록을 가져오기 from urllib.request import urlopen from bs4 import BeautifulSoup html = urlopen('https://en.wikipedia.org/wiki/Kevin_Bacon') bs = BeautifulSoup(html, 'html.parser') for link in bs.findAll('a'): if 'href' in link.attrs: print(link.attrs['href']) html = urlopen('h..

cs/크롤링 2023.03.06

[크롤링] 고급 HTML 분석 (findAll/get_text()/트리이동/정규표현식/람다표현식)

[파이썬으로 웹 크롤러 만들기 - 라이언 미첼, 한빛미디어] 의 내용을 바탕으로 공부한 내용입니다. 작성한 글의 모든 저작권은 한빛미디어에 있습니다. part1. 스크레이퍼제작 - chapter 1~2 저자가 제시하는 페이지를 통해 초록색 글씨만 추출해보자! from urllib.request import urlopen from bs4 import BeautifulSoup html = urlopen('https://www.pythonscraping.com/pages/warandpeace.html') bs = BeautifulSoup(html, 'html.parser') nameList = bs.findAll('span',{'class': 'green'}) for name in nameList: print..

cs/크롤링 2023.02.28