Silphireの日記: search.pl改良版
日記 by
Silphire
def getindex(range = 1..30)
info = []
# Rangeクラスから最初と最後の要素を抜き出す
first = range.first
last = range.last
last -= 1 if range.exclude_end?
while first <= last
# HTML取得
s = gethtml('slashdot.jp', "/search.pl?start=#{first}")
# 前と後の余分な物を削除
s.gsub!(START_COMMENT, '')
s.gsub!(END_COMMENT, '')
# 情報の部分を抜き出す
s.scan(TITLE_PATTERN) do |t|
h = {}
h['number'] = t[0].to_i
h['url'] = t[1]
h['title'] = t[2]
h['author'] = t[3]
h['comment'] = t[4].to_i
h['time'] = t[5]
info << h
first += 1
break if first > last
end
end
info
end
getindex(1...50).each do |h|
print "#{h['number']} #{h['title'].tosjis} <#{h['url']}> by #{h['author']} with #{h['comment']} comments on #{h['time']}\n"
end
info = []
# Rangeクラスから最初と最後の要素を抜き出す
first = range.first
last = range.last
last -= 1 if range.exclude_end?
while first <= last
# HTML取得
s = gethtml('slashdot.jp', "/search.pl?start=#{first}")
# 前と後の余分な物を削除
s.gsub!(START_COMMENT, '')
s.gsub!(END_COMMENT, '')
# 情報の部分を抜き出す
s.scan(TITLE_PATTERN) do |t|
h = {}
h['number'] = t[0].to_i
h['url'] = t[1]
h['title'] = t[2]
h['author'] = t[3]
h['comment'] = t[4].to_i
h['time'] = t[5]
info << h
first += 1
break if first > last
end
end
info
end
getindex(1...50).each do |h|
print "#{h['number']} #{h['title'].tosjis} <#{h['url']}> by #{h['author']} with #{h['comment']} comments on #{h['time']}\n"
end
search.pl改良版 More ログイン