1.6 KiB
1.6 KiB
Ruby에서 간단한 웹 크롤러를 작성하려면 nokogiri와 open-uri 라이브러리를 사용할 수 있다.
1. 사전 준비
웹 크롤링을 위해 nokogiri를 설치해야 한다.
gem install nokogiri
2. 간단한 웹 크롤러 예제
다음은 특정 웹사이트에서 제목을 가져오는 간단한 크롤러이다.
require 'nokogiri'
require 'open-uri'
# 크롤링할 웹페이지 URL
url = "https://news.ycombinator.com/"
# 페이지 가져오기
html = URI.open(url)
doc = Nokogiri::HTML(html)
# 뉴스 제목 가져오기
doc.css('.titleline a').each_with_index do |title, index|
puts "#{index + 1}. #{title.text}"
end
3. 코드 설명
-
라이브러리 로드
nokogiri: HTML을 파싱하는 라이브러리open-uri: 웹페이지 내용을 가져오는 라이브러리
-
웹페이지 가져오기
html = URI.open(url) doc = Nokogiri::HTML(html)URI.open(url): 해당 URL의 HTML을 가져온다.Nokogiri::HTML(html): HTML을 파싱하여 문서 객체를 생성한다.
-
데이터 추출
doc.css('.titleline a').each_with_index do |title, index| puts "#{index + 1}. #{title.text}" end.css('.titleline a'): CSS 선택자로 제목을 선택한다..each_with_index: 제목을 하나씩 출력한다.
4. 실행 결과 예시
1. OpenAI releases GPT-4.5
2. Ruby 4.0 announced
3. NASA discovers new exoplanet
...
이제 Ruby를 사용하여 원하는 웹페이지의 데이터를 쉽게 크롤링할 수 있다.