Недавно мой блог был побанен ндексом (до сих пор не понимаю за что) и после написания пары писем в саппорт я решил написать простой скрипт для отслеживания того, появились ли в выдачи страницы с моего блога:
require 'hpricot'
require 'mechanize'
class YaChecker
class << self
def get_pages(url)
url = "http://m.yandex.ru/search?query=host%3D%22www.#{url}%22%20|%20host%3D%22#{url}%22"
agent = WWW::Mechanize.new
agent.user_agent_alias = 'Mac Safari'
utf_page = agent.get_file(url)
doc = Hpricot(utf_page)
pages = doc.search("//div[@class='result-txt']")
result = pages[0]
return 0 if result.inner_text == "\nИскомая комбинация слов нигде не встречается\n"
return result.inner_text.gsub(/Нашлось/,'').to_i
end
end
end
Воодушевившись результатом я написал так-же проверялку для Google:
require 'hpricot'
require 'mechanize'
class GooChecker
class << self
def get_pages(url)
url = "http://www.google.ru/search?hl=ru&q=site%3A#{url}+|+site%3Awww.#{url}&btnG=%D0%9F%D0%BE%D0%B8%D1%81%D0%BA+%D0%B2+Google&lr=&aq=f&oq="
agent = WWW::Mechanize.new
agent.user_agent_alias = 'Mac Safari'
utf_page = agent.get_file(url)
doc = Hpricot(utf_page)
pages = doc.search("//div[@id='ssb']/p/b[3]")
return 0 if pages[0].nil?
pages[0].innerText.to_i
end
end
end
Если кому понадобится, то пользуйтесь на здоровье