Programming/Python 웹 스크래퍼 만들기

Programming/Python 웹 스크래퍼 만들기

Python selenium 활용해서 webscrapper 기초 제작 6

5.17 Refactor indeed.com 에서 python 을 검색했을때 url 을 보면, 페이지를 바꿀 때마다 start 숫자가 바뀌는것을 알 수 있다. 2 페이지에는 start 가 10, 3 페이지에는 start 가 20 으로 바뀐다. 따라서 이 페이지의 pagination 은 여기 url 의 &start 부분이다. 기존의 아래 코드를 → def extract_indeedn_jobs(keword): pages = get_page_count('python') for page in range(pages): base_url = 'https://kr.indeed.com/jobs?q=' browser.get(f'{base_url}{keyword}') 아래 처럼 바꿔준다. pages = get_page_co..

Programming/Python 웹 스크래퍼 만들기

Python selenium 활용해서 webscrapper 기초 제작 5

5.16 Pages part Two 이전 게시물에서 검색 첫 페이지에 div ( 페이지 개수를 세주는 div ) 가 없을 때 검색 결과에 구인정보가 있는지 없는지 출력해주는 코드를 작성했었다. 보통 구인 정보가 있는 경우에는 스크래핑 할 페이지가 1개 만 있다는것을 의미한다. 만약 페이지를 받게 된다면, 몇 개가 있는지 세어봐야 한다. 만약 5개 페이지 밖에 없으면 5개의 div 를 받게 된다. 만약 5개 보다 더 많은 경우에도 5개까지만 나타내는 코드를 작성한다. ( 웹사이트 부하 방지 ) 만약 5개보다 적게 있다면, count 를 그대로 return 해준다. from requests import get from bs4 import BeautifulSo..

Programming/Python 웹 스크래퍼 만들기

Python selenium 활용해서 webscrapper 기초 제작 4

5.15 Pages (Pages 개수 count 하는 함수 만들기) 첫 페이지 pagination(페이지 번호)에서 몇 개의 페이지가 있는지 알아내는 코드를 작성해본다. 페이지 번호가 총 5개, 다음을 넘기는 화살표가 1개 있는 코드를 확인할 수 있다. nav role 이 navigation인 코드에서 div 가 3개만 있다면, 총 3페이지만 있다는 의미가 되며, div 가 6개가 있다면, 총 5페이지에 1개의 화살표(다음페이지로 넘어가는) 가 있다는 뜻이 된다. 그럼 얼마만큼의 페이지를 스크래핑해야 하는지 알 수 있다. 프로그램 작동 방식이 바뀌어야 한다. 왜냐하면 이제 프로그램이 해야 하는 일은 2가지이기 때문이다. ( 총 얼마만큼의 페이지가 있는지 개수 세기, 각 페이지 안의 구인정보 가져오기 ) ..

Programming/Python 웹 스크래퍼 만들기

Python selenium 활용해서 webscrapper 기초 제작 3

5.14 Select 이전에 작성했던 코드 실행하면, indeed 로 접속해서 python 검색한 크롬창이 띄어진다. 마우스 우클릭 - inspect(검사) from requests import get from bs4 import BeautifulSoup from selenium import webdriver from selenium.webdriver.chrome.options import Options options = Options() options.add_experimental_option('excludeSwitches', ['enable-logging']) browser = webdriver.Chrome(options=options) base_url = 'https://kr.indeed.com/j..

Programming/Python 웹 스크래퍼 만들기

Python None

5.13 None None은 True, False, 숫자, 문자열 처럼 변수에 넣을 수 도 있고, 리스트나 딕셔너리 안에 넣어도 되는 데이터 타입이다. None 을 쓸 때는, 무언가가 없을 때 이다. False와 헷갈릴수 있는데, False 는 True 가 아니다는 것을 의미한다. None은 무언가가 "없을 때"를 의미한다, 혹은 무언가가 있어야 하는데 아무것도 없을 때를 의미. None은 무언가가 있어야 하는데 없다고 나타내주는 데이터 타입이다. 지난 게시물에서 아래 코드를 사용했을 때 li들을 출력했는데, 일부 li 들은 구인 정보가 있었지만, 어떤 li 는 mosic-zone 으로 구인 정보가 없는 li 가 있었다. from requests import get from bs4 import Beaut..

Programming/Python 웹 스크래퍼 만들기

Python selenium 활용해서 webscrapper 기초 제작 2

5.11 Recursive 이전 게시물에서 Selenium 을 이용해서 브라우저를 열었다. from requests import get from selenium import webdriver from selenium.webdriver.chrome.options import Options options = Options() options.add_experimental_option('excludeSwitches', ['enable-logging']) browser = webdriver.Chrome(options=options) browser.get('https://kr.indeed.com/jobs?q=python') print(browser.page_source) while(True): pass 이전에 제작..

Security Engineer
'Programming/Python 웹 스크래퍼 만들기' 카테고리의 글 목록 (3 Page)