본문 바로가기
Data/Crawling

[2022.01.12] 잡플래닛 특정기업 면접 데이터 크롤링

by injekim97 2022. 1. 12.
반응형

[2022.01.12] 잡플래닛 특정기업 면접 데이터 크롤링 

 

 

이번 게시글은 면접 준비를 위해, 데이터를 모으기 위해 크롤링을 할 것이다.

 

from selenium import webdriver
import time



# login screen move
def login_screen_url() :
    global driver
    driver = webdriver.Chrome('C:\/chromedriver.exe') # 제어하기 위해 변수 선언
    driver.maximize_window() ### 창의 해상도 크기 최대화 (전체화면) ###
    url = "https://www.jobplanet.co.kr/users/sign_in?_nav=gb" # 이동할 링크주소를 변수에 저장
    driver.get(url) # 해당 링크로 이동

    return driver



# user info (login)
def user_info():
    
    # ID
    xpath = "//*[@id='user_email']" 
    input_search = driver.find_element_by_xpath(xpath).send_keys("******@catholic.ac.kr")


    # password
    xpath2 = "//*[@id='user_password']" 
    input_search = driver.find_element_by_xpath(xpath2).send_keys("******")


    # button click
    xpath3 = "//*[@id='signInSignInCon']/div[2]/div/section[2]/fieldset/button" # x 버튼, //button[@class='closeBtn']에다가 "" 로감싸야함
    login = driver.find_element_by_xpath(xpath3).click()


    
# Enterprise input
def Enterprise():
    # 기업명 이름
    xpath4 = "//*[@id='search_bar_search_query']" 
    Enterprise_input = driver.find_element_by_xpath(xpath4).send_keys("카페24")
    
    # 검색 버튼 클릭
    search = "//*[@id='search_form']/div/button"
    btn_search = driver.find_element_by_xpath(search).click()

    # 검색한 기업 이름 클릭
    xpath5 = "//*[@id='mainContents']/div[1]/div/div[2]/div[1]/div[1]/a"
    Enterprise_name = driver.find_element_by_xpath(xpath5).click()
    time.sleep(2)
    
    
    # 검색한 기업의 면접 리뷰 클릭
    xpath6 = " //*[@id='viewCompaniesMenu']/ul/li[5]/a"
    review = driver.find_element_by_xpath(xpath6).click()
    time.sleep(2)
    
    scroll_down = driver.execute_script("window.scrollTo(0, 650)") 

    
    
    # 검색한 기업의 직종 select box 클릭
    xpath7 = "//*[@id='occupation_select']"
    job = driver.find_element_by_xpath(xpath7).click()
    time.sleep(2)
    
    # select box 를 클릭 해서 IT/인터넷 클릭 (Value는 source 로 open 후 확인)
    select_box = driver.find_element_by_xpath("//select/option[@value='11600']").click()
    time.sleep(2)

    
    
    # select box로 인해 스크롤 초기화 -> 다시 내려주기 
    scroll_down = driver.execute_script("window.scrollTo(0, 650)") 

    
    # 검색한 기업의 직급 select box 클릭
    xpath8 = "//*[@id='job_rank_select']"
    job_rank = driver.find_element_by_xpath(xpath8).click()
    time.sleep(2)
    
    # select box 를 클릭 해서 사원-대졸 클릭 (Value는 source 로 open 후 확인)
    select_box = driver.find_element_by_xpath("//select/option[@value='1']").click()
    time.sleep(2)
    
    
    # select box로 인해 스크롤 초기화 -> 다시 내려주기 
    scroll_down = driver.execute_script("window.scrollTo(0, 650)") 

    
    
# 본격적인 crawling
def craw() :
    data = []
    idx = 1

    print("★★★★★ 기출 면접 data crawling 시작합니다 ★★★★★")

    try : 
        
        # Pagination 1~47
        for j in range(1,48):
            url = f"https://www.jobplanet.co.kr/companies/23717/interviews_by_filter?by_occupation=11600&by_job_rank=1&by_success=&page={j}"
            driver.get(url)
            
            
            # 해당 page의 i번째 게시글 데이터 추출  
            for i in range(1,6) :
                
                theme = driver.find_element_by_xpath(f"//*[@id='viewInterviewsList']/div/div/section[{i}]/div/div[2]/div/div[1]/h2")    
                question = driver.find_element_by_xpath(f"//*[@id='viewInterviewsList']/div/div/section[{i}]/div/div[2]/div/dl/dd[1]/span")
                question_result = driver.find_element_by_xpath(f"//*[@id='viewInterviewsList']/div/div/section[{i}]/div/div[2]/div/div[2]/div/dl/dd[1]")

                  
              # replace \n 제거
                res_theme = theme.text.replace("\n","")
                res_question = question.text.replace("\n","")
                res_question_result = question_result.text.replace("\n","")

                
                # result 결과
                data.append(res_theme)
                data.append(res_question)
                data.append(res_question_result)

        
                
                print(f"{idx}번째 게시글")
                print()
                
                print("주제:",data[0])
                print()
                
                
                # ★★★ review_data가 있을 경우에만 ★★★
                try :
                    temp = []
                    review_data = driver.find_element_by_xpath(f"//*[@id='viewInterviewsList']/div/div/section[{i}]/div/div[2]/dl/dd[2]")
                    res_review_data = review_data.text.replace("\n","")
                    temp.append(res_review_data)
                    print("면접일자:",temp[0])
                    print()
                    
                except :
                    pass
                
                
                print("면접질문:",data[1])
                print()
                
                
                   
                # ★★★★★ 면접답변 혹은 면접느낌이 있을 경우에만 ★★★★★
                try :
                    temp2 = []
                    question2 = driver.find_element_by_xpath(f"//*[@id='viewInterviewsList']/div/div/section[{i}]/div/div[2]/div/dl/dd[2]")
                    res_question2 = question2.text.replace("\n","")
                    data.append(res_question2)
                    print("면접답변 혹은 면접느낌:",temp2[0])
                    print()
                    
                except :
                    pass
                
                
                print("면접결과:",data[2])
                print()
                print("---------------------------------------------------")
                idx += 1
                data = [] # 출력했으니 초기화
                
                
    except Exception as e :
        print("페이지 네이션 오류",e) 
        
        
# --------------------------- main -------------------------
login_screen_url() # jobplanet login screen url 
time.sleep(1)

user_info() # ID & PWD input -> login button click
time.sleep(2)

Enterprise() # 기업명 입력 후 면접 버튼 클릭 후 직군 , 직급 클릭 
craw() # 면접 review data 추출

 

 

출력결과

★★★★★ 기출 면접 data crawling 시작합니다 ★★★★★
1번째 게시글

주제: "1차 면접은 인사팀과 실무 면접관 한 분씩 오셔서 2:1로 진행되었습니다.2차 면접은 CTO와 1:1 면접입니다."

면접일자: 2018/01

면접질문: 1차 면접은 자기소개와 기술 관련 질문이 있었고 직무경험과 같은 질문이 있었습니다.2차 면접도 역시 기술면접과 자기소개 등 면접 질문이 있었습니다.

면접결과: 대기중

---------------------------------------------------
2번째 게시글

주제: "지원하고 3일인가 있다가 연락와서 면접 가능한 날짜 잡고 면접을 보러감긴장하지 않도록 잘 이끌어 주시고 끝나면 고생하셨다며 엘베까지 마중도 나와주셔서 기분 좋게 면접 봤던 기억이 있음"

면접일자: 2018/01

면접질문: 1차 인성 면접은 1:1로 진행했고, 2차는 면접관 두분이 들어오셔서 1:2로 진행간단한 자기소개부터 시작해서 주로 이력서와 자기소개서에 썼던 내용들 위주로 질문함자신이 지원한 직무에 대한 이해는 필수

면접결과: 불합격

---------------------------------------------------
3번째 게시글

주제: "지원후 1주일 지나서 전화로 연락이 옴.면접 시간은 최대한 배려해 줬고 2일 후 면접 보러 감.많이 떨렸는데 면접 전 친절하게 안내해 줘서 좀 풀림."

면접일자: 2017/09

면접질문: 면접관 한분이 들어와서 그동안 했던 프로젝트 등에 대해 질문.이력서에 있는 내용 위주로 질문.이후 회사설명 해주시고 1차 면접은 끝남.대체적으로 편안한 분위기에서 면접이 진행되었고 면접을 보면서 내가 이런 부분에서 준비가 많이 부족했구나를 느낌.ㅠㅠ면접 질문은 대체적으로 평이함.

면접결과: 불합격

---------------------------------------------------
4번째 게시글

주제: "php 개발자 채용이었고,php는 써본적이 없어서 면접 질문이라곤 인성질문만 하셨음"

면접일자: 2019/01

면접질문: 프로젝트에 대해 설명해주세요.야근은 어떻게 생각하는지?

면접결과: 합격

---------------------------------------------------
5번째 게시글

주제: "서류 전형 - 1차 면접 - 2차 면접으로 진행되었으며, 1차 면접과 2차 면접이 같은 날 진행되었습니다."

면접일자: 2018/11

면접질문: 여기서 근무하면 어떤 언어를 다룰줄 알아야한다. 공부해야한다. 할 수 있겠냐 등등 질문

면접결과: 합격

---------------------------------------------------
6번째 게시글

주제: "프로그래머스 데브 매칭 알고리즘 테스트 통과 후 1차 면접(총 2회 면접 중)기술 면접 30분, 인사 면접 30분"

면접일자: 2021/11

면접질문: 개인 프로젝트 경험지원자의 주 언어인 Python이 다른 언어보다 좋은 점경험해 본 아키텍트나 디자인 패턴

면접결과: 불합격

---------------------------------------------------
7번째 게시글

주제: "1차 면접 (기술, 인성 면접)2차 면접 (CTO)-> 결과 통보"

면접일자: 2017/12

면접질문: 기술적인 질문 외에도 인성 면접을 보는것이 인상적이었다

면접결과: 합격

---------------------------------------------------
8번째 게시글

주제: "서류전형 > 인사팀 인터뷰 > 실무자 인터뷰 > 임원진 인터뷰"

면접일자: 2021/06

면접질문: 이직사유무엇을 하고싶은지논리 기반 문제

면접결과: 불합격

---------------------------------------------------
9번째 게시글

주제: "서류 합격 후 1차 / 2차 실무면접으로 진행되며 요즘은 화상으로 진행되고 있음"

면접질문: 대부분 경력직을 뽑기 때문에 이력서 위주의 경력에 대한 사항을 질문하고, 해당 팀에서 이런 일이 있을 때 어떻게 할 것인지를 문의 함

면접결과: 합격

---------------------------------------------------
10번째 게시글

주제: "잡코리아를보고 지원했고 비대면화상면접 일대일 직무면접진행"

면접일자: 온라인 지원

면접질문: 클라우드에 대한 기초지식database 기초지식온프렘에서 클라우드로 가야하는이유

면접결과: 불합격

---------------------------------------------------
11번째 게시글

주제: "프로그래머스 코딩테스트 + 서류 합격 후 1차 면접"

면접일자: 2021/11

면접질문: 1. 클라우딩 서비스 사용 경험2. javacript let, const, var 차이3. svn, git 차이

면접결과: 대기중

---------------------------------------------------
12번째 게시글

주제: "간단한 코딩테스트 > 실무진 면접 > cto면접 > 연봉협상"

면접일자: 2020/10

면접질문: 나중에 어떤 개발자가 되고 싶으신지 말씀해주세요

면접결과: 합격

---------------------------------------------------
13번째 게시글

주제: "hr ----> 실무진 면접 진행, 피드백은 좀 느린편"

면접질문: hr 질문은 무난하나, 면접을 위한 형식적인 질문이 좀 많은 편실무 면접은 꼬리질문 많음hr과 실무면접 하루에 다 봄

면접결과: 합격

---------------------------------------------------
14번째 게시글

주제: "서류합격이후 일주일이내면접, 면접은화상진행, 1차는 해당팀장이 진행, 상세히질문함"

면접일자: 2020/12

면접질문: 퇴사사유, 했던업무상세히질문,꼬리질문, 대략1시간정도진행

면접결과: 합격

---------------------------------------------------
15번째 게시글

주제: "일주일뒤에 면접일정 연락오고, 결과도 일주일이내 옵니다"

면접일자: 2021/08

면접질문: 인사면접은 프로젝트 소개, 본인의 장점 단점, 자기소개 등등 기본적인 질문..문제는 직무면접.. 꼬리물기 질문하면서 뽑기싫다는 느낌이 강하게 왔습니다. 인상쓰면서 질문함

면접결과: 불합격

---------------------------------------------------
16번째 게시글

주제: "머신러닝 딥러닝에 대한 기본을 세세하게 물어 보았다."

면접일자: 2020/07

면접질문: 머신러닝 딥러닝의 기본에 대해 물어보았다. 기억나는건 토픽모델링과 알고리즘 기본 그리고 c++에대해 물어보았다

면접결과: 합격

---------------------------------------------------
17번째 게시글

주제: "인사면접 > 기술면접으로 이력서 기준의 평이한 면접 진행"

면접일자: 2020/03

면접질문: 잘된 프로젝트와 잘못된 프로젝트 자사 서비스 이해도에대한 질문

면접결과: 합격

---------------------------------------------------
18번째 게시글

주제: "화상회의로 진행되었습니다인사팀 면접 후 실무진 면접 순서였습니다질문자 2: 면접자 1 정도로 진행되었고간단한 자기소개와 이력, 포트폴리오 중심으로 물어봅니다"

면접일자: 2021/06

면접질문: 인사팀 면접 시 카페24에 대해 어느정도 알고있는지 물었던 게 기억에 남습니다.인사팀 면접 후 실무진 면접때에는 좀 더 심도깊은 카페24의 단점과 개선점을 물어보았습니다.

면접결과: 불합격

---------------------------------------------------
19번째 게시글

주제: "인사팀 면접, 실무팀 면접, 다시 인사팀 면접 이런식으로 면접을 한 3번 넘게 하루에 본거 같습니다."

면접일자: 2017/05

면접질문: 본인 장점이 무엇인지, 어떠한 업무가 주어질텐데 어떵게 기여할 수 있을지, 이전에 하던 업무와 어떤 시너지를 낼 수 있는지 문의등이 있었습니다.

면접결과: 합격

---------------------------------------------------
20번째 게시글

주제: "구직사이트에 올려 놓은 이력서를 카페24 인사팀에서 보고 면접 제안을 주셨습니다. 1차 실무 면접과 2차 인성 면접을 하루에 다 보았으며 덕분에 매우 편했습니다."

면접일자: 2019/02

면접질문: 1.가장 자주 방문하는 사이트를 평가해주세요.2.기획할 때 가장 중요하게 생각하는 것은 무엇인지 알려주세요.3.왜 이직을 결심하게 되었는지 알려주세요.

면접결과: 합격

---------------------------------------------------
21번째 게시글

주제: "서류 - 코테 - 인성/기술 - CTO면접서류는 경쟁률이 쌔지 않았고.. 코테도 쉬운편 인성/기술면접때는 두분 들어오셔서 했는데 되게 편하게 잘 대해주시고 나름 어렵진 않음.CTO님 면접도 생각보다 잘 답변하여서 괜찮은 면접경험"

면접일자: 2019/03

면접질문: 1.데드락관련 문제2.웹 기본적인 흐름3. 일을 처리하는 방식이 어떤지?

면접결과: 합격

---------------------------------------------------
22번째 게시글

주제: "면접 후 1주일 내로 통보가 옵니다."

면접일자: 2017/03

면접질문: 술 잘 마시는지동료가 부당한일을 시키면 어떡할건지부득이하게 야근할 경우 어떻게할건지

면접결과: 합격

---------------------------------------------------
23번째 게시글

주제: "서류 접수 후 유선연락 받고, 화상면접으로 인사면접 및 실무면접 진행하였습니다."

면접일자: 2021/06

면접질문: 왜 이 회사로 이직을 하려고 하는가? 등 무난한 질문

면접결과: 불합격

---------------------------------------------------
24번째 게시글

주제: "자신있게 아는것 자유롭게 말했다. 합리적이고 좋은 경험."

면접일자: 2021/02

면접질문: 주어진 문제를 어떻게 해결할 수 있는다프로젝트에 대해서 어떻게 짰는지

면접결과: 합격

---------------------------------------------------
25번째 게시글

주제: "직무면접과 인성면접이 하루에 모두 진행되었습니다. 비대면이었고요. 사이에 5분정도 쉬는 시간을 주셨습니다."

면접일자: 2021/04

면접질문: 기본적인 cs 지식 묻는 질문과 자소서에 작성된 프로젝트 설명하는 방식이었습니다.

면접결과: 불합격

---------------------------------------------------
26번째 게시글

주제: "생각보다 자유로운 분위기에서 봤습니다입사할땐 이 팀이 아니어서 지금 팀의 면접 분위기는 모르겠네요"

면접일자: 온라인 지원

면접질문: 인사팀하고 대화할때가 흥미로웠어요면접이라기보다 대화라는 기분이었습니다

면접결과: 합격

---------------------------------------------------
27번째 게시글

주제: "실무 면접 -> 인사 면접이 동시에 이루어 지며 총 1시간 정도 걸립니다.실무는 자료 구조등 전공 이론을 많이 물어봅니다."

면접일자: 2021/04

면접질문: 자바에서 가비지 콜렉터가 뭔지?연봉 얼마 받고 싶은지?왜 지원했는지?

면접결과: 불합격

---------------------------------------------------
28번째 게시글

주제: "서류 합 이후 간단하게 인성면접(성격 장단점 등) 진행 그 후1차면접은 해당 팀 팀장님 및 그룹팀장님과 보았습니다. 케미가 잘 맞아서 화기애애한 분위기였고,1차합 이후 cto면접 진행하였습니다."

면접일자: 온라인 지원

면접질문: 1. Owasp top 10 관련 질문2. OSI 7계층3. 정규화 역정규화4. 이진 탐색

면접결과: 합격

---------------------------------------------------
29번째 게시글

주제: "프로그래머스 데브매칭 지원 -> 서류 통과 -> 1차 실무진(기술) 면접 + 인사 면접 -> 2차 CTO 면접"

면접일자: 2021/05

면접질문: 실무진(기술) 면접 - 기본적인거 물어본다.인사면접 - 대화하듯이 편안하게 말하면 된다. 단, 연봉을 1/13 으로 제시하니 주의바람. 헷갈리게 왜 1/13을 고수하는지는 모르겠지만...CTO 면접 - 취조당하는 느낌이다. 꼬투리식으로 계속 물어본다. 딱 정해진 답이 아니라 어떤 예시를 들어준 다음에 어떤 식으로 해결할 거냐를 물어본다.

면접결과: 불합격

---------------------------------------------------
30번째 게시글

주제: "인사팀면접, 실무자면접, 과제, 임원면접으로 진행됨인사팀면접과 실무자면접은 동일한 날에 진행되었고, 임원면접전 과제가 있었음"

면접일자: 온라인 지원

면접질문: 지금까지 경력 사항들에 대해서 전반적으로 설명해주세요.

면접결과: 합격

---------------------------------------------------
31번째 게시글

주제: "1일차: 인사 - 기술 면접2일차: 임원 면접"

면접질문: 인사 면접에서 희망 연봉 물어봄. 연봉 안 맞으면 다음 면접 진행 불가연봉은 1/13

면접결과: 불합격

---------------------------------------------------
32번째 게시글

주제: "이메일로 연락 및 면접을 진행하였습니다."

면접일자: 2021/02

면접질문: 자기소개문제를 해결하는 접근법입사하고 나서 하고 싶은 일.

면접결과: 불합격

---------------------------------------------------
33번째 게시글

주제: "인사팀 면접 후 실무자 면접 진행 했습니다.하루에 모든 면접이 다 이루어 졌습니다."

면접일자: 온라인 지원

면접질문: 서울에 편의점이 몇 개나 있을 건 같은지 질문했습니다.맥켄지 입사질문으로 유명했던 질문이라대충 제방식대로 추론하는 법을 애기 했던 것 같습니다

면접결과: 합격

---------------------------------------------------
34번째 게시글

주제: "면접은 평이한 수준이었으나 간혹 당황스러운 질문이 있었음. 화상 면접으로 진행."

면접일자: 온라인 지원

면접질문: 지원 포지션과 관련된 경험. 전 직장에서 문제를 해결했던 예시. 카페24를 지원한 이유. 회사에 대해 알고있는 것.

면접결과: 대기중

---------------------------------------------------
35번째 게시글

주제: "면접은 신입전형으로 코딩테스트와 기술면접 진행을 하였습니다."

면접질문: 오래되어서 기억에 남는 질문은 없었고 코딩테스트 수준이 평이했던 것으로 기억됩니다.

면접결과: 불합격

---------------------------------------------------
36번째 게시글

주제: "메일로 안내받은 코딩테스트 후에 인사팀과 개발팀과의 면접을 따로따로 보았습니다. 다들 매우 친절하셔서 계속 웃으면서 면접을 보았네요."

면접일자: 2021/01

면접질문: 사용하는 프레임워크 선택 이유. RESTful API 에 대한 설명. 사용하는 언어의 장단점.

면접결과: 불합격

---------------------------------------------------
37번째 게시글

주제: "면접내용은 가벼운 자료구조, 웹의동작 과정 등에 대한 기초적인 질문"

면접일자: 2019/08

면접질문: 회사에 어떤인재가 되고싶은지와 개발경험들에 대해 질문해주셧습니다

면접결과: 합격

---------------------------------------------------
38번째 게시글

주제: "한 날에 인사팀 면접 후 바로 실무팀 면접을 모두 진행함"

면접일자: 2016/08

면접질문: 자기소개, 장단점, php, 리눅스 할 줄 아는지..?

면접결과: 합격

---------------------------------------------------
39번째 게시글

주제: "생각보다 많은것들을 준비해야 합니다. 질문 범위나 난이도가 높은 편입니다."

면접일자: 2021/02

면접질문: 트랜드에 대한 깊이 있는 질문, 상황에 대한 대처능력, 부족한 상황에서 어떻게 해결할 것인가?

면접결과: 합격

---------------------------------------------------
40번째 게시글

주제: "인사팀 면접 -> 실무팀 면접으로 진행인사팀 1:1실무자(팀장급) 2명 : 지원자 1명"

면접질문: 언어테스트는 기본으로 보고, 야근많은데 괜찮은 지 물어봅니다

면접결과: 합격

---------------------------------------------------
41번째 게시글

주제: "인사팀 면접을 보고 실무팀 면접을 봤습니다.평범한 면접이였습니다"

면접일자: 온라인 지원

면접질문: 회사 지원동기를 물어봄특수한상황에 대한 대응방법 물어봄

면접결과: 합격

---------------------------------------------------
42번째 게시글

주제: "실무진-인사팀 이렇게 진행해요.분위기는 편했고 크게 어려운게 없었어요."

면접일자: 2017/01

면접질문: 실무진 면점 - 직무 관련 경력 유무, 팀워크 경험, 자기소개인사팀 면접 - 복지 설명 및 연봉 협의

면접결과: 합격

---------------------------------------------------
43번째 게시글

주제: "1차에서 인사팀 인터뷰 진행 후 실무진 인터뷰 진행2차는 cto와 1:1면접"

면접일자: 온라인 지원

면접질문: 1.인사팀 면접에서 희망 연봉을 말해야함. 1/13임을 설명해줌2. 실무진 인터뷰에서 프로젝트 관련 질문과 경력 관련내옹을 상세하게 물어봄1차 인터뷰는 이틀뒤에 바로 알려줬음. 1차 인터뷰에서 희망연봉을 말하라거 해서 당황. 1차에서 연봉 높게 부르면 떨어질 수도 있을듯..2차는 c.t.o와 면접. 1차 실무 인터뷰에서 한시간동안 기술관련 질문을 받았는데 2차에서도 1시간동안 기술질문만 받음. 답변이 마음에 안든건지 표정이 계속 안좋고 그래서 그런지 보고나서도 기분이 계속 별로였음.

면접결과: 대기중

---------------------------------------------------
44번째 게시글

주제: "서류 - 온라인면접 - 인사팀면접 - 1차실무면접 - cto면접"

면접일자: 온라인 지원

면접질문: 온라인 면접 질문( 직무에 필요한 배경지식에 대한 질문과 트러블 슈팅에 대한 질의)Cto 면접의 자료구조, 문제해결 방식 질문

면접결과: 합격

---------------------------------------------------
45번째 게시글

주제: "1차 인사 2차 실무(1,2차는 같은날 진행), 3차 과제, 4차 임원면접"

면접일자: 2020/10

면접질문: 지원한이유, 솔루션써봤는가?, 사는동네에 생수가 한달에 몇통이나 소비될까?

면접결과: 합격

---------------------------------------------------

 

반응형

댓글