핀테크 교육/금융데이터 활용
크롤링 (네이버 기사 크롤링 - newspaper3k 사용)
나굥
2022. 7. 5. 13:44
728x90
newspaper3k : newspaper3k는 뉴스 데이터를 크롤링을 위한 패키지
뉴스 기사의 url을 전달해주면, 뉴스 기사의 제목과 텍스트를 추출해준다.
https://always-here.tistory.com/55?category=984522
크롤링 (네이버 기사 크롤링)
link_result=find_url(company_code) 네이버 금융 뉴스공시를 클릭하며 뉴스 기사들의 제목이 나오고 해당 제목을 클릭해야 뉴스 내용을 볼 수 있다. 따라서 먼저 회사 코드로 뉴스 공시 페이지에 들어간
always-here.tistory.com
위 글을 newspaper3k를 사용해서 다시 크롤링 해보았다.
df=pd.DataFrame(columns={"title","content"})
title의 링크와 본문을 저장할 데이터프레임 df를 생성한다.
link_result=find_url(company_code)
df["title"] = link_result
위 글에서처럼 title의 링크를 추출하고 이를 df 데이터프레임에 넣어주었다.
newspaper3k를 사용하기 위해 Article 임포트 해오고 url_to_text 함수를 생성했다.
from newspaper import Article
def url_to_text(url):
article = Article(url, language='ko')
article.download()
article.parse()
return article.text
데이터프레임['새로운열'] = 데이터프레임['열이름'].apply(함수)
해당 데이터프레임의 열이름의 열에다가 전체 행에 해당 함수를 적용하여 새로운 열에다가 저장하라! 는 뜻
해당 데이터프레임의 열이름의 열에다가 전체 행에 해당 함수를 적용하여 새로운 열에다가 저장하라! 는 뜻
df['content'] = df["title"].apply(url_to_text)
df['content'] 에 각각의 기사의 본문 내용이 저장된 것을 알 수 있었다.
728x90