[파이썬] 파이썬으로 웹 스크래퍼 만들기, Part 2 Location 추출하기

미음제

·

2021. 2. 16. 22:19

파이썬으로 웹 스크래퍼 만들기

 

Part 1 이론

Part 2 파이썬으로 웹 스크래퍼 만들기

Part 3 Django를 사용하기 위해 알면 좋은 것

 

파이썬으로 웹 스크래퍼 만들기는 위와 같은

3개의 Part로 나누어 진행한다.

 

이 전 글 보기

2021/02/16 - [Developer/Python] - [파이썬] 파이썬으로 웹 스크래퍼 만들기, strip()으로 공백 지우기


Part 2 파이썬으로 웹 스크래퍼 만들기

Extract Location

 

일자리와

일자리를 제공하는

회사의 이름을 추출했고,

 

일자리를 제공하는 

회사의 위치를

추출한다.

 

우선 location을

추출하기 위해

페이지 검사를 해본다.

 

회색 부분이 location 정보인데

span의 string만 

추출하면 되는

간단한 구조이다.

def extract_jobs(html):  # 인자로 soup을 준다.
    title = html.find("h2", {"class": "title"}).find("a")["title"]
    company = html.find("div", {"class": "sjcl"}).find("span")
    company_anchor = company.find("a")
    if company_anchor is not None:
        company = company_anchor.string
    else:
        company = company.string
    company = company.strip()
    #아래 부분 추가
    #location 변수 생성, return문에 location추가
    location = html.find("span", {"class": "location"}).string
    return {'title': title, 'company': company, 'location': location}

location이라는 변수에

회사의 위치를 저장한다.

 

html은

extract_indeed_jobs() 함수에서

result를 인수로 받은 것인데,

 

이 result가

정보를 추출하고자 하는

페이지를 요청한 것이다

즉, 요청한 페이지의

html정보를 담고 있다.

 

따라서 

location에는

요청한 페이지의 html정보에서

span의 class명이

location인 곳에서

string을 추출하는 것이다.

 

이 상태에서

main.py에서 

extract_jobs()함수를 호출해

출력하면

다음과 같은 결과가 나타난다.

 

dicts형태에서

title과 company옆에

location이 추가되어

출력된다.

Job Card에 적혀있는

회사의 위치와

출력된 위치가 같은 것을

확인 할 수 있다.

 

 

*출력 시

출력된 결과와

페이지의 요소가

매칭이 안 되는 경우가 있는데

웹 사이트의 정보가

시시각각 변하고

사용자의 위치에 따라 달라지는

경우가 있어 그렇다.

 

 

이전에 company를 추출하는

과정에서

company 회사 명에서

anchor가 있는 경우와

없는 경우가 있어

none이 발생하지 않도록

해주었는데

 

location에서도

마찬가지 과정을 

적용해준다.

 

none이 있을 수 있어

none을 출력하지 않게 하기 위해

페이지 검사를 다시 한번 한다.

 

이전과는 다르게

하늘색 부분에서 추출한다.

 

location 변수 부분을

다음처럼 수정해준다.

location = html.find("div", {"class": "recJobLoc"})["data-rc-loc"]

html.find() 부분이

하나의 div가 되는 것이고

이 div에서

"data-rc-loc" 속성을

추출해오는 것이다.

 

title을 추출해올 때와

같은 방법이다.

2021/02/14 - [Developer/Python] - [파이썬] 파이썬으로 웹 스크래퍼 만들기, Part 2 Title 추출하기

 

[파이썬] 파이썬으로 웹 스크래퍼 만들기, Part 2 Title 추출하기

파이썬으로 웹 스크래퍼 만들기 Part 1 이론 Part 2 파이썬으로 웹 스크래퍼 만들기 Part 3 Django를 사용하기 위해 알면 좋은 것 파이썬으로 웹 스크래퍼 만들기는 위와 같은 3개의 Part로 나누어 진행

mieumje.tistory.com

 

반응형