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

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

etc-image-0

파이썬으로 RSS 크롤링하기

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

pip install feedparser

etc-image-1

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

웹페이지를 위한 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 아래에 다 저장되게 되는데요.

etc-image-2

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

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

etc-image-3

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

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

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

etc-image-4

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

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

>>> 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)

간단한 코드로 구현할 경우

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

etc-image-5

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

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

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

728x90

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

dorudoru님의
글이 좋았다면 응원을 보내주세요!