ChatGPT로 네이버에서 "비트코인 ETF "를 검색하고 그 결과를 추출하는 크롤링 소스를 작성해 보자.
고급 개발자가 초급 개발자 가르치며 일하는 것 보다, chatgpt를 이용하는 게 훨씬 빠르고 스트레스도 안 받을 것 같다. 그런데 문제는 앞으로 고급 개발자를 어떻게 만드냐는 것이다. 이미 프로그램 구조를 알고 개발 경험이 많은 고급 개발자들은 chatgpt를 활용해 살아남겠지만, 초급은 글쎄다. 진입이라도 할 수 있으려나 심히 우려된다.
https://kmong.com/self-marketing/424811/T2S6YUqqKb
[프름프트]
"https://www.naver.com/"에서 "비트코인ETF"로 검색한 결과를 크롤링하는 파이썬 코드를 작성해 줘.
기사는 news_contents 클래스 단위로 구성되어 있어.
기사 제목, 요약, 기사 URL, 썸네일 URL을 출력하는 코드를 작성해.
기사제목은 news_tit 클래스
,요약은 api_txt_lines.dsc_txt_wrap 클래스
,기사 URL은 api_txt_lines.dsc_txt_wrap 클래스 태그의 href 속성에서 추출해.
그리고 썸네일은 thumb 클래스에서 추출하면 돼
[chatgpt 결과 코드]
import requests
from bs4 import BeautifulSoup
# 검색어와 URL 설정
search_query = "비트코인ETF"
url = f"https://search.naver.com/search.naver?query={search_query}"
# User-Agent 헤더 추가
headers = {
"User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.110 Safari/537.3"}
# HTTP 요청
response = requests.get(url, headers=headers)
soup = BeautifulSoup(response.text, 'html.parser')
# 기사별로 반복
articles = soup.select('.news_contents')
for article in articles:
# 기사 제목 추출
title_tag = article.find(class_='news_tit')
title = title_tag.text.strip() if title_tag else ""
# 기사 요약 추출
summary_tag = article.find(class_='api_txt_lines dsc_txt_wrap')
summary = summary_tag.text.strip() if summary_tag else ""
# 기사 URL 추출
url_tag = article.find(class_='api_txt_lines dsc_txt_wrap')
article_url = url_tag['href'] if url_tag else ""
# 썸네일 URL 추출
thumbnail_tag = article.find(class_='thumb')
thumbnail_url = thumbnail_tag['src'] if thumbnail_tag else ""
# 결과 출력
print("Title:", title)
print("Summary:", summary)
print("URL:", article_url)
print("Thumbnail:", thumbnail_url)
print("\n")
[chatgpt 출력결과] - 기사, 요약, 링크, 썸네일 이미지 정보는 잘 추출하였는데, 썸네일 url 값이 이상하다.
Summary: (사진=AFP) 블룸버그통신 등에 따르면 SEC는 이날 ‘아크 21셰어즈 비트코인 ETF’(ARKB) 등 비트코인 현물 ETF 11개의 상장을 승인했다. 이들 ETF는
이르면 11일부터 거래를 시작할 예정이다. 비트코인 현물 ETF 상장 승인을 두고 SEC 의견은 첨예하게 갈렸다. SEC 위원 5명 가운데 공화당 추천 위원 2명은
상장에...
URL: http://www.edaily.co.kr/news/newspath.asp?newsid=02833926638756736
Thumbnail: data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7
....
....
[다시 작업시키기 - 추가 프름프트]
썸네일을 "data-lazysrc" 속성에서 추출하는 것으로 변경해 줘.
[chatgpt 결과 코드]
[chatgpt 출력결과]
https://kmong.com/self-marketing/424811/T2S6YUqqKb
'코드리뷰' 카테고리의 다른 글
내 PC에 도커와 쿠바네티스 구축하기 (1) | 2024.12.01 |
---|---|
chatgpt 인공지능을 이용해 네이버 뉴스 크롤링하기 (1) | 2024.01.08 |
희찬이를 위한 네이버 뉴스 웹크롤링, 파이썬 코드 16줄로 완성하기 (0) | 2023.12.31 |
댓글