멋쟁이사자처럼 13기/TIL 챌린지

멋쟁이사자처럼 후기 + 일은 간편해지고 수익은 성장하는 자동화 스킬 : 파이썬부터 Chat GPT 까지

개발자 지망생 리네 2025. 5. 11. 23:56

📆 DAY34

 

3. 웹크롤링을 활용한 데이터 수집 자동화

(4) 네이버 연관검색어 수집

- 원래 파이썬에서 문자열 내에 변수 값을 넣고 싶을 때에는 f"{a}"이런 식으로 입력하여야하지만, 파이참은 "" 안에 {a}만 입력하면 f가 앞에 자동으로 붙음

- query문에 검색 키워드를 삽입하고자 할 때에는 해당 주소 URL을 확인하면 답이 나와 있음

import requests
from bs4 import BeautifulSoup

keyword = input("키워드 입력 >> ")
code = requests.get(f"https://search.naver.com/search.naver?where=nexearch&sm=top_hty&fbm=0&ie=utf8&query={keyword}")
soup = BeautifulSoup(code.text, "html.parser")
result = soup.select("ul.lst_related_srch._list_box div.tit")
for i in result:
    print(i.text)

 

 

더 알고 싶은 점

- URL에 정보가 그대로 나와 있는 경우도 있고, 사용자 정보가 숨겨져서 나오는 경우도 있는데 어떤 경우에 가려서 나오는지.

-> 아래 링크를 번역해보니, 이용자의 개인 정보 (아이디나 비밀번호)와 같이 민감한 정보는 쿼리문에 보이지 않게 처리하는 것 같다.

https://owasp.org/www-community/vulnerabilities/Information_exposure_through_query_strings_in_url

 

Information exposure through query strings in url | OWASP Foundation

Information exposure through query strings in url on the main website for The OWASP Foundation. OWASP is a nonprofit foundation that works to improve the security of software.

owasp.org

 

 

느낀 점

지금 멋쟁이사자처럼 백엔드 파트에서 활동하면서 포스트맨으로 실행해보는 실습을 진행하고 있는 터라, 본 강의에서 나오는 쿼리문이 반갑게 느껴졌다. 인텔리제이에서 requestParam, requestBody 등을 설정하면 포스트맨에서 반드시 해당 값을 넘겨주어야 에러가 뜨지 않고 200이 떠서 익숙해지려고 노력하고 있는 참이었기에 더욱 그랬다. 단순히 spring으로 개발할 때 뿐만 아니라 웹 크롤링에서도 관련 지식이 사용되는 걸 보니 더욱 열심히 공부해야겠다고 생각했다.

그리고 이렇게 연관 검색어를 크롤링하여 가져오는 것을 보니, 이를 토대로 네이버의 연관 검색어 리스트를 가져와 다른 앱 검색 기능에서 연관 검색 리스트를 하단에 보여주는 것도 가능하지 않을까 궁금해지기도 했다.