Crawling #1: 가장 기본적인 형태의 크롤링/파싱


In [1]:
# 가장 기본적인 형태의 크롤링, 그리고 파싱에 대해서 배워볼 예정입니다.
# 이 방식을 이용해서 정적인 사이트 ( <=> 동적인 사이트; AJAX나 FrameSet 형태를 제외한; )
# 를 쉽게 크롤링하실 수 있습니다.

# 예제에서는, 
# 네이버 블로그를 크롤링하는 방법에 대해서 살펴보겠습니다.

In [2]:
import pandas as pd

import requests  # 크롤링을 위한 라이브러리
from bs4 import BeautifulSoup  # 파싱을 위한 라이브러리

In [3]:
post_df = pd.DataFrame(columns=[
    "검색 키워드",
    "블로그 제목",
    "블로그 이름",
    "블로그 주소",
])

In [4]:
# 일단은 검색할 키워드를 미리 선정합니다.
# 여러분들이 아마 데이터 분석을 하실 예정이면, 이런 키워드 또한 크롤링, 혹은 어떠한 방식으로 생성하여
# 크롤링을 수행해야 합니다

# 이렇게 할 수도 있겠지만, 아래처럼 한번 키워드 리스트를 만들어보겠습니다.
keywords = [
    "신사동 원룸",
    "신사역 원룸",
    "가로수길 원룸",
    "가로수길 오피스텔",
    "신사역 부동산",
]

# 지역 키워드
location_keywords = [
    "신사동",
    "신사역",
    "압구정동",
    "압구정역",
    "가로수길",
]

# 접미사 키워드
postfix_keywords = [
    "부동산",
    "원룸",
    "오피스텔",
    "투룸",
    "방",
]

keywords = [
    "{location_keyword} {postfix_keyword}".format(
        location_keyword=location_keyword,
        postfix_keyword=postfix_keyword
    )
    for location_keyword in location_keywords
    for postfix_keyword in postfix_keywords
]

keywords


Out[4]:
['신사동 부동산',
 '신사동 원룸',
 '신사동 오피스텔',
 '신사동 투룸',
 '신사동 방',
 '신사역 부동산',
 '신사역 원룸',
 '신사역 오피스텔',
 '신사역 투룸',
 '신사역 방',
 '압구정동 부동산',
 '압구정동 원룸',
 '압구정동 오피스텔',
 '압구정동 투룸',
 '압구정동 방',
 '압구정역 부동산',
 '압구정역 원룸',
 '압구정역 오피스텔',
 '압구정역 투룸',
 '압구정역 방',
 '가로수길 부동산',
 '가로수길 원룸',
 '가로수길 오피스텔',
 '가로수길 투룸',
 '가로수길 방']

In [5]:
for keyword in keywords:
    # 우리가 작성한 키워드는 " " ( 띄어쓰기 ) 로 되어 있지만,
    # 네이버에서 검색을 할 떄는 " " => "+" 로 변경되서 검색되어야 합니다.
    
    query = keyword.replace(' ', '+')
    
    response = requests.get("https://search.naver.com/search.naver?query={query}".format(query=query))
    assert response.status_code is 200

    dom = BeautifulSoup(response.content, "html.parser")

    blog_post_elements = dom.select('li.sh_blog_top')

    for blog_post_element in blog_post_elements:
        title = blog_post_element.select('a.sh_blog_title')[0].attrs.get('title')
        blog_name = blog_post_element.select('a.txt84')[0].text
        url = blog_post_element.select('a.sh_blog_title')[0].attrs.get('href')
        
        post_df.loc[len(post_df)] = [keyword, title, blog_name, url]

In [6]:
post_df


Out[6]:
검색 키워드 블로그 제목 블로그 이름 블로그 주소
0 신사동 부동산 [신사동부동산] 세인파트너스 사무실인테리어 공사 강남부동산거래소 http://blog.naver.com/superb4u?Redirect=Log&lo...
1 신사동 부동산 [신사동상가] 강남 대형스튜디오 사무실 추천 강남부동산거래소 http://blog.naver.com/superb4u?Redirect=Log&lo...
2 신사동 부동산 강남구 신사동 상가 월세 5천/290만 - 가로수길 초입 [신사동부동산 - 신세계부동산] 신세계 부동산 http://qstarq.blog.me/220624582269
3 신사동 원룸 신사동빌라 원룸 가로수길 축복하우스 (주)피플부동산&삼성2호점 http://blog.naver.com/people_vs?Redirect=Log&l...
4 신사동 원룸 신사동 원룸 풀옵션 압구정역 현대썬앤빌 (주)피플부동산&정효선 http://blog.naver.com/people_re?Redirect=Log&l...
5 신사동 원룸 강남구용달이사 강남원룸이사 논현동 신사동 ☎ 1 6 7 0 - 9 9 8 6 친절이사 http://blog.daum.net/yk_6060/592589
6 신사동 오피스텔 신사역 오피스텔 샤르망s 신사동 전세 House Channel 02.566.2027 http://blog.daum.net/gangnamjeil/1391
7 신사동 오피스텔 신사동 압구정역 오피스텔 크레신타워 월세 아름다운 세상 TEL.02-555-4472 (24시간) http://blog.daum.net/arangsin/672
8 신사동 오피스텔 ★은평구 신사동 오피스텔★ 응암역 정원탑오피스텔(복층형) 월세 은평구 응암동 원룸, 오피스텔 월세 전세 http://blog.daum.net/heechul588/897
9 신사동 오피스텔 신사동 오피스텔 압구정역 현대썬앤빌 하우스마켓 http://blog.daum.net/gnhmk/1545
10 신사동 오피스텔 ☆은평구 응암역 오피스텔☆ 은평구 신사동 복층오피스텔 월세 2000/40만원 은평구 응암동 원룸, 오피스텔 월세 전세 http://blog.daum.net/heechul588/918
11 신사동 투룸 신사동신축빌라 투룸의 끝판왕!! 넓은거실 빌라세상♥ http://blog.naver.com/qwmirowqenro?Redirect=Lo...
12 신사동 투룸 ★응암역 부동산★ 은평구 신사동 투룸 빌라 전세 1억 은평구 응암동 원룸, 오피스텔 월세 전세 http://blog.daum.net/heechul588/907
13 신사동 투룸 신사동신축빌라 응암역 투룸신혼집~!! 엘림주택에서 내 집마련~! http://blog.naver.com/elimboo?Redirect=Log&log...
14 신사동 투룸 은평구 신사동 투룸 전세 dlwnstka003님의블로그 http://blog.naver.com/dlwnstka003?Redirect=Log...
15 신사동 방 신사동 신축빌라 방3개 엄청크다요 신축빌라♥story http://blog.naver.com/hzhen70?Redirect=Log&log...
16 신사동 방 신사동, 석향갤러리 몽우 조셉킴, 화가의 방 Hyang&Gallery Mirim http://blog.naver.com/roffjflalfla?Redirect=Lo...
17 신사동 방 가로수길 신사동 강남 원룸 넓은방 사무실서치 http://blog.naver.com/trust5480540?Redirect=Lo...
18 신사동 방 신사동신축빌라 예쁜 쓰리룸 최고 ♭ 내 집 마련의 꿈 로얄하우징에서 ♬ http://blog.naver.com/ejqmfzlf28?Redirect=Log&...
19 신사동 방 신사동신축빌라 사랑스럽당>_< 돌아댕기기! http://blog.naver.com/dfsg6lase2?Redirect=Log&...
20 신사역 부동산 서초구 잠원동 사무실, 상가 월세 4000/600만 - 신사역 출구앞 [신세계부동산] 신세계 부동산 http://qstarq.blog.me/220602994486
21 신사역 부동산 강남구 신사동 사무실 (상가가능) 월세 4천/250만 - 신사역 출구앞 [신세계부동산] 신세계 부동산 http://qstarq.blog.me/220600804196
22 신사역 부동산 신사역 저렴한 신사동 강남 사무실 임대 사무실풍경 - 강남.서초사무실임대전문사이트 http://smspk2014.blog.me/220597051578
23 신사역 부동산 청담동 사무실 급매물 세련된 풀인테리어 신사역 벼리 http://blog.naver.com/soriege?Redirect=Log&log...
24 신사역 원룸 논현동 풀옵션 신사역 원룸 T3하우스 (주)피플부동산&삼성2호점 http://blog.naver.com/people_vs?Redirect=Log&l...
25 신사역 원룸 신사역 풀옵션 원룸 잠원동 그린홈 (주)피플부동산&삼성2호점 http://blog.naver.com/people_vs?Redirect=Log&l...
26 신사역 원룸 신사역 오피스텔 원룸 가로수길 여성추천 (주)피플부동산&삼성1호점 http://blog.naver.com/evermmorre?Redirect=Log&...
27 신사역 원룸 신사역 원룸 단기임대 잠원동 그린빌딩 (주)피플부동산&삼성2호점 http://blog.naver.com/people_vs?Redirect=Log&l...
28 신사역 원룸 신사역 오피스텔 원룸 샤르망s 월세 아름다운 세상 TEL.02-555-4472 (24시간) http://blog.daum.net/arangsin/670
29 신사역 오피스텔 신사역 오피스텔 원룸 가로수길 여성추천 (주)피플부동산&삼성1호점 http://blog.naver.com/evermmorre?Redirect=Log&...
... ... ... ... ...
59 압구정역 오피스텔 압구정역 오피스텔 신축 신사동 현대썬앤빌 House Channel 02.566.2027 http://blog.daum.net/gangnamjeil/1121
60 압구정역 방 압구정역 타로카페(신사동 가로수길 근처) '타로블라썸'(타로점,꽃점,레노먼드) ★냐옹이&베르 집사 허스키★ http://blog.naver.com/seenan?Redirect=Log&logN...
61 압구정역 방 압구정역 옛날농장, 커피빈, 오피스텔 방구하기? le choix avec de la mode francaise http://lechoix90.blog.me/120210555217
62 압구정역 방 압구정역 마사지 - 힐링타임 The 재미있게 살기 http://blog.naver.com/apexism?Redirect=Log&log...
63 압구정역 방 신사동 풀옵션 - 3호선 압구정역 원룸풀옵션 RENT / 2012년 신축 .실제 방 강남다방(多 BANG) 서초다방(多 BANG) http://blog.naver.com/kkamanae2?Redirect=Log&l...
64 압구정역 방 신사동 풀옵션 원룸.투룸 단기렌트 - 3호선 압구정역 풀옵션 RENT / 투룸 17... 강남다방(多 BANG) 서초다방(多 BANG) http://blog.naver.com/kkamanae2?Redirect=Log&l...
65 가로수길 부동산 [흑석동아파트,흑석동부동산,사진갤러리]영월 가로수길~?? ㅎ 한강공인-흑석동(02-817-4411) http://blog.naver.com/hjs6533?Redirect=Log&log...
66 가로수길 부동산 강남구 신사동 상가 월세 5천/290만 - 가로수길 초입 [신사동부동산 - 신세계부동산] 신세계 부동산 http://qstarq.blog.me/220624582269
67 가로수길 부동산 메르스사태 종식선언 후 신사동가로수길 부동산 거래량 상승중 강남구 매물정보 NO.1 명가부동산 http://blog.naver.com/1yyjaewoos?Redirect=Log&...
68 가로수길 부동산 [프리메라 신사동 가로수길]에 팝업스토어...압구정 청담동부동산 소수섭.. 압구정 청담동 공인중개사 소수섭 http://blog.daum.net/ssoss3000/436
69 가로수길 부동산 강남구 신사동 사무실, 상가 월세 1억/750만 - 압구정역, 가로수길 인접 [신사... 신세계 부동산 http://qstarq.blog.me/220615240638
70 가로수길 원룸 신사동빌라 원룸 가로수길 축복하우스 (주)피플부동산&삼성2호점 http://blog.naver.com/people_vs?Redirect=Log&l...
71 가로수길 원룸 신사역 오피스텔 원룸 가로수길 여성추천 (주)피플부동산&삼성1호점 http://blog.naver.com/evermmorre?Redirect=Log&...
72 가로수길 원룸 논현동 원룸 가로수길 빌라 T3하우스 (주)피플부동산&최연호 http://blog.naver.com/uppdb?Redirect=Log&logNo...
73 가로수길 원룸 풀옵션를 갖춘 가로수길원룸 500/100만원 부동산으로 1조 부자 되기 http://blog.naver.com/sjcho202?Redirect=Log&lo...
74 가로수길 원룸 [강남 신사동 가로수길 원룸] 깔끔한 구조로 화사한 내부 ▶신화부동산◀ http://blog.naver.com/cosmeticize?Redirect=Log...
75 가로수길 오피스텔 신사역 오피스텔 원룸 가로수길 여성추천 (주)피플부동산&삼성1호점 http://blog.naver.com/evermmorre?Redirect=Log&...
76 가로수길 오피스텔 논현동] 가로수길 인근 38평형 세양오피스텔 임대 강남부동산거래소 http://blog.naver.com/superb4u?Redirect=Log&lo...
77 가로수길 오피스텔 가로수길 오피스텔경매 [강남구 논현동 세양에이팩스타워] 경매전문공인중개사 장중향팀장 http://blog.naver.com/5925jang?Redirect=Log&lo...
78 가로수길 오피스텔 신사동 가로수길 오피스텔 신축 HANDMADE 010-2412-9879 (24시간 문의) 日本語,ENGLISH http://blog.naver.com/gmountain7?Redirect=Log&...
79 가로수길 오피스텔 신사동 가로수길 오피스텔 전세 True house 02. 566. 2027 http://blog.daum.net/starlhj1/1124
80 가로수길 투룸 가로수길 투룸 반월세 신사동 투룸 반월세 1억4천/20!! 보세요~ 강남신사동 가로수길 전문 대표:하순자의 블로그^^ http://blog.naver.com/yhjgreat?Redirect=Log&lo...
81 가로수길 투룸 강남투룸전세,가로수길 투룸전세,세로수길투룸전세,가로수길빌라전세,신사역전세,압구정전세 강남,압구정,신사동 부동산의 모든것 http://blog.naver.com/kahmater?Redirect=Log&lo...
82 가로수길 투룸 신사동 투룸전세 가로수길 투룸전세 귀한 투룸전세 리모델링한 깔끔한 방있습니다!! 강남신사동 가로수길 전문 대표:하순자의 블로그^^ http://blog.naver.com/yhjgreat?Redirect=Log&lo...
83 가로수길 투룸 가로수길투룸전세 신사동투룸전세 강남투룸전세!! 2억2천 있습니다~~ 강남신사동 가로수길 전문 대표:하순자의 블로그^^ http://blog.naver.com/yhjgreat?Redirect=Log&lo...
84 가로수길 방 [서울 단체 숙소] 신사역 가로수길 근처 방4개 욕실2개의 저렴한 숙소입니다~ BnBHero[비앤비히어로]:Smart,Unique and Local stay http://bnbhero.blog.me/220538122733
85 가로수길 방 AXOO / 아티스트 에이전시 / 악수 / COLLECTOR`S ROOM / 수집가... 정9999 http://dhwjddms7323.blog.me/10182199349
86 가로수길 방 신사동 원룸 - 2013년 반전세 원룸. 풀옵션 복층/ 3호선 압구정역 ~3호선 신... 강남다방(多 BANG) 서초다방(多 BANG) http://blog.naver.com/kkamanae2?Redirect=Log&l...
87 가로수길 방 리빙셀렉트 샵 SOP : 아이방꾸미기 가로수길 인테리어샵 기분 좋은 느낌을 풍기는 여자 http://blog.naver.com/ham321?Redirect=Log&logN...
88 가로수길 방 2015.05.21<ARTC X PAGETURNER 가로수길 음악가의 방> EunJu Jung http://blog.naver.com/redgrace76?Redirect=Log&...

89 rows × 4 columns


In [7]:
post_df.to_csv("naver_room.csv", index=False)