http://yyyit.com/2016/01/checkurlinruby/ 我的博客中对应的文章 1 ruby 入门脚本 2 使用 http 发送请求 3 在响应中搜索关键字,如果不匹配则发送邮件 4 脚本中用四个叹号标记的需要替换成你自己的邮箱账号密码、收件人邮箱、目标 url 和关键字
require "open-uri"
require 'net/smtp'
class Http
def httpget(uri)
#如果有GET请求参数直接写在URI地址中
html_response = nil
open(uri) do |http|
html_response = http.read
end
puts html_response
end
def httpgetwithassert(uri, keywords)
#如果有GET请求参数直接写在URI地址中
html_response = nil
open(uri) do |http|
html_response = http.read
end
if !html_response[keywords].nil?
puts '响应中包含关键字'
else
puts '响应中缺失关键字'
require 'net/smtp'
msg = [ "Subject: 响应中缺失关键字#{keywords}\n", "to:!!!!收件人邮箱\n","\n" "响应中缺失关键字\n" ]
Net::SMTP.start( 'smtp.163.com', 25, "163.com", "!!!!邮箱用户名", "!!!!密码", :login ) do |smtp| smtp.send_message( msg,'!!!!邮箱用户名','!!!!收件人邮箱' )
end
end
end
end
Http.new.httpgetwithassert('!!!!URL','!!!!关键字')