0
我試圖讓一個網站的頭條(越南):獲取網站標題與引入nokogiri
# encoding: utf-8
require 'rubygems'
require 'nokogiri'
require 'open-uri'
page = Nokogiri::HTML(open("http://vnexpress.net"))
list = page.css("a[class='link-topnews']")
puts list[0].text
,但它給了錯誤:
undefined method `text' for nil:NilClass (NoMethodError)
的奇怪的是,使用完全相同的代碼,有時它可以工作並給出正確的結果:
Triều Tiên dọa hành động với máy bay B-52 của Mỹ
試圖拿到冠軍它給了同樣的錯誤,即使:
page = Nokogiri::HTML(open("http://vnexpress.net/"))
list = page.css("title")
puts list[0].text
爲什麼會那樣做的?我做錯了什麼?
感謝,它的工作原理。你有什麼想法,他們爲什麼會這樣做?即只使用Nokogiri時拒絕提供內容? – Chin 2013-03-20 05:05:25
也許他們這樣做是因爲他們不希望人們用機器人來抓取他們的網站?您最好閱讀他們的服務條款以使用他們的網站。違反這些規定可能會導致您被禁止,並可能採取法律行動。 – 2013-03-20 05:14:35
@Yuriy,不錯,但嘗試'at'而不是'search()。first'' – pguardiario 2013-03-21 09:04:29