파이썬(python)으로 RSS 크롤링하는 방법

업무 중에 RSS를 크롤링해야하는 건이 있어서 파이썬을 통해서 RSS를 크롤링하는 방법을 알아보겠습니다.

파이썬으로 RSS 크롤링하기

먼저 파이썬 패키지인 Feedparser를 깔아야 합니다.

pip install feedparser

그리고 기본적인 패키지들을 불러왔습니다.

웹페이지를 위한 Requests와 분석을 위한 BeautifulSoup 불러왔고

출력을 위해서 Pandas도 불러왔습니다.

import feedparser
import pandas as pd
from bs4 import BeautifulSoup
import requests

그리고 제 블로그의 RSS를 불러와봤습니다.

기본 사용법은 feedparser 자습서 사이트에 나와있습니다.

 

Common RSS Elements — feedparser 6.0.2 documentation

Docs » Basic Features » Common RSS Elements Edit on GitHub © Copyright 2010-2020 Kurt McKee, 2004-2008 Mark Pilgrim Revision e13bb55c. Built with Sphinx using a theme provided by Read the Docs.

feedparser.readthedocs.io

간단하게 feedparser.parse 명령어로 해당 rss의 내용을 긁어올 수 잇습니다.

그리고 해당 내용은 entries 아래에 다 저장되게 되는데요.

일반적인 RSS는 아래와 같은 구조로 이루어져있다고 합니다.

자습세어는 title과 description, link, pubdate정도로 이루어져 있다고 합니다.

실제 티스토리의 RSS를 사이트에 접속하여 확인해보면

유사하지만 일부 다른 것이 있습니다.

실제 티스토리의 Rss 구조는 아래와 같습니다.

그래서 원하는 정보의 태그를 확인하여 하나씩 가져오면 되는데요.

홈페이지의 예시를 참고하여 만들어보았습니다.

>>> import feedparser
>>> d = feedparser.parse('http://feedparser.org/docs/examples/rss20.xml')
>>> d.feed.title
u'Sample Feed'
>>> d.feed.link
u'http://example.org/'
>>> d.feed.description
u'For documentation <em>only</em>'
>>> d.feed.published
u'Sat, 07 Sep 2002 00:00:01 GMT'
>>> d.feed.published_parsed
(2002, 9, 7, 0, 0, 1, 5, 250, 0)

간단한 코드로 구현할 경우

아래와 같이 잘 동작함을 알 수 있습니다.

혹시 RSS를 크롤링해야할 일이 있으시다면 이런 방법으로 한번 해보시기 바랍니다.

자습서에 워낙 코드가 잘 만들어져 있기 때문에, 코드를 참고하시어 하나씩 만들어가시면 될것 같습니다.

그럼 잘 사용하시기 바랍니다.

728x90

해당 블로그에서 발행되는 콘텐츠 중 일부 글에는 제휴 및 홍보 관련 링크가 포함될 수 있으며, 파트너스 활동의 일환으로 일정액의 수수료를 받을 수 있습니다.