brunch

You can make anything
by writing

C.S.Lewis

by 광화문덕 Oct 30. 2023

크롤링이 뭐야?

CHAPTER 11. 파이썬 언어와 크롤링의 유익함

현실로 돌아와 다시 일상으로 복귀했다.


오랜만에 토요일 외출이다. 기분 좋은 토요일 봄날에 화창한 햇살까지 더해지니 마음 속 설렘이 용솟음 쳐옴을 느낀다.


형님이 있는 인사동쪽으로 이동했다. 오늘은 식사보다는 간단히 티타임을 하기로 한 날이다. 주말엔 내가 육아를 해야 해서 시간을 오래 낼 수 없기도 하거니와, 형님도 요즘 이래저래 바쁜 일정이 있어 오래 시간을 낼 수 없는 상황이기도 해서다.     


인사동 거리는 예전만큼 복잡하지는 않았지만, 여전히 외국인 관광객들의 발걸음은 이어지고 있는 것을 보니 다행이라 생각됐다. 안그래도 경기가 안좋아져서 지역상권이 힘들어지고 있다보니 마음 한 켠에는 지역경제활성화에 대한 고민이 많아져서 이기도 하다.     


인사동 작은 골목길을 따라 걸어가며 인사동만의 감성을 느껴보려 했다. 한국 전통 미술 작품들이 진열된 갤러리와, 전통 공예품들을 파는 상점들, 화려한 색감과 아름다운 문양으로 장식된 한복들이 창가에 자리해 있어 한복 입기를 좋아하는 관광객들이 사진을 찍고 다니며 즐거워하는 모습이 눈에 띄었다.


인사동 골목에는 다양한 작가들이 그린 그림들이 걸려 있어서 산뜻한 봄날과 잘 어울리는 화려한 색채들이 내 눈을 사로잡았다. 이색적인 건물들과 골목 사이로 간간히 녹음과 민요가 흘러나오는 소리가 들려, 인사동 특유의 전통음악과 분위기를 느낄 수 있었다.     


인사동 메인거리를 지나, 예전 20대때 종종 들르던 커피숍으로 들어갔다. 커피숍 창가에 앉아 창문 너머로 거리를 보는 것만으로도 힐링 그 자체였다. 형님을 기다리며 마시는 커피 한 잔이 너무도 매력적인 날이랄까.     


카페를 둘러봤다. 작고 아늑한 카페 내부에는 통유리로 된 창문이 있어 밖의 봄날의 햇살이 드넓게 들어오고 있었다. 그 옆에는 예쁜 꽃이 달린 나무 가지가 장식하고 있다. 작은 탁자 위에는 흰색 바탕에 깔끔하면서도 호리호리한 생긴 꽃병이 놓여져 있었고, 바리스타가 있는 커피를 내리는 공간 주변으로는 소박하고 귀여운 장식품들이 배치되어 따뜻한 분위기를 자아내고 있다. 벽면에는 예쁜 그림들과 사진들이 걸려있어서 카페 내부가 화사하게 장식되어 있다. 남자 둘이 그것도 40대 중후반의 남성 둘이 앉아서 대화나누기에는 그야말로 제격(?)인 상황이다. 감성감성한 팔춘기의 두명의 중년이 있기에 말이다.     


카페는 시간대가 부드러운 재즈 음악이 카페 안에 우아한 분위기를 더해주었다. 카페 밖을 내다보면 보도를 걷는 사람들과 자전거를 타고 가는 사람들이 기분 좋게 웃으며 지나가는 모습을 보니 봄인 게 실감이 갔다. 봄이라서 그런지 주변 나무들은 싱그러운 녹색으로 덮여있고, 꽃들의 향기가 살짝 섞인 공기가 카페로 스며들었다. 평화로운 풍경이 지난 한 주간 직장생활로 지쳐있던 내 마음을 편안하게 풀어주는 듯한 느낌이 들었다.


“띵동”     


형님으로부터 문자가 왔다.      


‘도착하셨나?’     


“신 기자 차가 많이 밀리네 조금만 더 기다려줘”     


형님이 조금 늦으신다는 문자였다. 그럴 수 있다. 토요일 도심 교통체증은 어쩔 수 없는 것이니 말이다.      


나는 보통 아메리카노만 마신다. 그런데 오늘은 왠지 카페라떼를 마셔야 할 분위기 같아 카페라떼를 주문했다. 부드러운 재즈 음악이 카페 안의 우아한 분위기를 더하니 카페라떼를 주문하길 잘했다는 생각이 들었다.     

따뜻한 카페라떼 컵을 손에 쥐고 따뜻한 음료의 기운을 느꼈다. 그 첫 모금은 부드럽고 풍부한 커피 향에 우유의 고소함이 입안에서 어우러져 기품이 느껴졌다. 커피는 정성스럽게 추출된 것 같았고, 부드러운 크림이 얹혀져 향긋한 향이 코끝까지 퍼지는 것을 느낄 수 있었다. 이렇게 따뜻하고 맛있는 커피는 봄날의 산뜻한 기운과 어우러져 내 마음을 더욱 기분 좋게 만들어줬다.      


그렇게 혼자만의 행복에 빠져 있을 즈음, 형님이 도착했다.     


“신 기자 미안해, 너무 늦었지?”     


“아유 형님! 별말씀을요 혼자서도 충분히 기분 좋은 시간을 보내고 있었는걸요”     


“그래???”     


“오늘 보자고 한 건 지난번에 얘기했던 크롤링 프로그램은 잘 되어가고 있나 궁금해서. 그리고 크롤링이란 게 궁금하기도 하고”     


“형님 그거는 그냥 전화로 이야기 나눠도 되는 거잖아요~ 굳이 황금 같은 육아를 해야 하는토요일에 보자고 하신건...”     


“너 쉬게 해주려고 그런거지”     


“흐흐흐흐흐 형님 전 아들과 아내님이랑 함께 하는 시간이 힐링입니다~~~”     


나는 공식입장을 내보이며, 형님께 너스레를 떨었다. 우리는 또다시 오랫동안 만나지 못한 사람처럼 요 며칠 사이에 일어났던 이야기들을 주고 받았고, 나는 본격적으로 형님께 크롤링에 대한 설명하기 시작했다.      


“형님 크롤링은 웹브라우저로 보는 정보 중에서 필요한 데이터를 끌어오도록 프로그램을 사용해서 작업을 하는 거에요. 요즘은 크롤링이 합법이냐 불법이냐에 대해서 논란이 되고 있긴 한데, 그렇다고 크롤링이 범죄수단이거나 그런 건 아니에요. 다만 데이터의 성격과 활용 목적에 따라 다르게 판단해야 하는 거죠. 단, 명심해야 할 건요. 개인정보와 민감정보는 절대적으로 다뤄서는 안되고, 크롤링할 때 주의사항이 있거든요 그러한 사항을 주의깊게 생각하면서 코드를 짜야 해요.”     


형님 눈빛은 흥미롭다는 듯이 반짝반짝 빛나고 있었다. 나는 부드러운 카페라데를 한 모금 마시고 다시 말을 이어갔다.      


“크롤링은 업무 효율화를 위해 매우 유용한 방법이에요. 예를 들어, 사업보고서를 작성할 때 다양한 리포트를 찾는 것은 번거로운 일이지만, 크롤링을 통해 필요한 정보를 빠르게 수집하고 가공할 수 있어요. 이렇게 시간과 노력을 절약하면 다른 업무에 집중할 수 있게 되는 거죠”     


형님은 신기한 기술을 영접한 듯 감탄사를 연신 내뱉었다. 마치 새로운 세계라도 발견한 듯한 기대와 흥분으로 가득찬 들뜬 표정이었달까. 나는 형님의 열정적인 리액션에 더욱 자신감을 갖고 다양한 예시를 들며 크롤링에 대한 설명을 이어나갔다.     


“형님이 아시다시피, 세상에 수많은 정보들이 있고, 우리는 다양한 방법으로 정보검색을 하고 그 정보를 가공해서 보고서도 쓰고, 기획안도 만들고, 기사도 쓰고, 연구논문도 만들고 하죠. 그런데 생각해보면 단계와 번거로운게 많은 일들이 있어요. 예를 들면, 논문을 쓰려면 다양한 국내외 사례가 담긴 리포트를 찾아야 해요. 그런데 그 리포트를 찾는 것 자체가 구글에서 키워드로 검색을 하고 거기에 만약에 10만 개의 검색 결과가 있다면 그 검색된 글을 하나하나 읽고, 거기에 심지어 첨부파일이 있다면 그걸 하나하나 다 확인하는 작업은 굉장히 고단한 작업일 거에요. 시간도 많이 할애해야 하구요”     


“그렇겠지”     


“그럼 이 일을 업무효율화를 해보면 어떻게 할 수 있을까요? 저 대신에 제가 설정한 키워드로 구글 검색을 하나하나 찾아다니면서 10만개의 내용을 확인하고, 제가 필요로 할 것 같은 내용이 있는 pdf나 doc(x), hwp(x) 파일을 자동으로 다운로드 받아서 정리해준다면요?”     


“그렇다면 무지 편해지겠는데? 그 시간에 다른 업무를 하면 되니까 말야”     


“맞아요! 형님 그런 작업을 크롤링을 통해서 할 수 있는 거에요”     


“오~~ 신 기자 요즘 데이터 신사업 공부한다고 하더니 뭔가 굉장히 똑똑해졌는걸”     


“흐흐흐흐흐 감사합니다. 형님 전 언제나 똑똑하지 않았나요 으흐흐흐흐흐”     


그렇다. 쉽게 말하면, 크롤링은 내가 원하는 웹페이지 내 정보 중에 내가 원하는 데이터만 끌어와서 보여주도록 프로그래밍된 프로그램을 말한다. 크롤링 프로그래밍 툴로서 파이썬이라는 프로그램언어가 강력한 기능을 제공해 준다.     


파이썬의 특징이라면, 프로그램 언어가 쉽게 익힐 수 있도록 되어 있고, 데이터 수집과 관련한 다양한 테크닉이 담긴 기능들이 이미 대부분이 구현돼 있다는 것이다. 또한 시중에 원하는 기능과 소스라는 단어를 조합해서 검색해보면 이미 샘플 예제가 널려있다. 그말은 곧 초보자도 쉽게 파이썬으로 그 어떤 것도 쉽게 개발할 수 있다는 말이다. 관건은 결국 해당 코드에 쓰인 기능이 담긴 함수가 옛날 버전이어서 최신 파이썬 컴파일러와 연동되는가 안되는가에 대한 디버깅, 최신성에 대한 이슈인데, 이 또한 걱정할 필요가 없다. 챗GPT와 함께라면 대부분이 해결되니 말이다.



파이썬 언어와 크롤링의 유익함

파이썬은 프로그래밍 언어의 중에서도 특히 초보자에게 적합한 언어로 꼽힙니다. 그 이유는 파이썬이 가독성이 높고 간결한 문법을 갖추고 있기 때문입니다.


C나 자바와 비교했을 때, 파이썬은 문법이 간단하고 이해하기 쉬워 누구나 빠르게 익힐 수 있습니다. 또한 파이썬의 풍부한 라이브러리와 모듈들은 다양한 기능들을 미리 구현해 놓았기 때문에, 개발자들은 원하는 기능을 쉽게 활용할 수 있습니다.


이러한 특징 덕분에 파이썬은 데이터 분석, 웹 개발, 인공지능 등 다양한 분야에서 널리 사용되고 있습니다.


크롤링은 파이썬을 활용한 데이터 수집 방법 중 하나로, 웹페이지 내 정보를 끌어와서 원하는 데이터를 추출하는 작업을 의미합니다. 이는 인터넷에 무수히 많은 정보들이 있는 현대 사회에서 매우 유용한 기술로 자리 잡았습니다.


크롤링을 통해 인터넷에 흩어져 있는 정보들을 한데 모아 정리하고 분석할 수 있기 때문에, 정보 수집과 가공에 시간과 노력을 절약할 수 있습니다.


예를 들어, 기업의 경쟁사나 시장 동향을 파악하기 위해 뉴스 기사나 SNS 데이터를 크롤링하여 분석하는 경우가 많습니다.


크롤링의 장점 중 하나는 실시간 데이터를 수집할 수 있다는 점입니다. 인터넷은 계속해서 새로운 정보가 추가되고 갱신되기 때문에, 크롤링을 통해 항상 최신 정보를 수집할 수 있습니다. 이를 통해 시장 동향을 신속하게 파악하거나 실시간 이슈에 대응할 수 있습니다.


또한, 크롤링을 통해 데이터를 자동으로 수집하므로 인력과 시간을 절약할 수 있습니다. 수작업으로 정보를 수집하려면 상당한 시간과 노력이 필요하지만, 크롤링을 활용하면 자동화된 프로그램이 대신해서 작업을 수행합니다. 이를 통해 생산성을 향상시킬 수 있으며, 사람이 하기에는 힘들거나 불가능한 대량의 데이터를 처리할 수 있습니다.


마지막으로, 크롤링을 통해 다양한 웹사이트에서 정보를 수집할 수 있습니다. 인터넷에는 다양한 유형의 웹사이트들이 존재하며, 각각의 웹사이트에는 고유한 데이터가 존재합니다. 크롤링을 통해 이러한 다양한 웹사이트에서 데이터를 수집하면 더 다양하고 풍부한 정보를 얻을 수 있습니다. 따라서 크롤링은 데이터 분석, 마케팅, 경영 전략 수립 등 다양한 분야에서 꼭 필요한 기술로 자리잡고 있습니다.


*매주 월요일 <광화문덕의 수상한 일상코딩>이 연재됩니다.

*많은 관심과 격려, 응원 부탁드려요!

*구독, 댓글, 좋아요는 제게 큰 힘이 됩니다. 감사합니다.





*업무효율화 툴이자, 소상공인 사장님들의 든든한 지원 프로젝트 DXReport도 많이 사랑해 주세요.


*DXRepot : 뉴스 및 구글 자동 모니터 및 키워드 분석, 주식 종목 리포트 모니터, 네이버 블로그 분석 툴


*DXLawReport : 판례 검색 툴


*DXDicReport : 초중고 및 대학생, 직장인들의 영어단어 암기 돕기 위한 툴


이전 11화 아듀, 신비한 파이썬의 모험
브런치는 최신 브라우저에 최적화 되어있습니다. IE chrome safari