什么是在登录后自动刷新页面刷新的正确工具?

时间:2009-06-03 18:16:58

标签: language-agnostic automation

一位朋友刚问我是否可以帮助他自动化占用大量时间的东西。他在线评论论文,所以基本上有一个网站,他登录并坐在一个页面刷新它,直到出现一些数据(要评分的新论文)。而不是这样做,他希望在有新项目需要他注意的时候通知他。

没有可以使用的API,访问网站需要登录。您认为这项工作的正确工具是什么?

我会发表我的想法作为答案,但我很好奇每个人的建议。

编辑:他正在运行Windows(Windows Vista)。只要网站在其中运行,浏览器就不重要了。

2 个答案:

答案 0 :(得分:2)

我的想法是为Firefox的Greasemonkey插件编写一个脚本。

基本上他会登录页面并打开脚本,该脚本会不断刷新并擦除网站上的新项目。如果找到一些,它会弹出一条消息并播放噪音(或类似的东西)。

我之前从未使用过Greasemonkey,但似乎这样的事情应该非常简单。

答案 1 :(得分:1)

您可以使用Waitr(see)编写一个小型Ruby脚本,该脚本实际上将使用浏览器并允许您抓取数据,或scrubyt,(examples)。

以下是scrubyt的样子。我建议你做一些像生成电子邮件或即时消息但可以做任何你喜欢的事情。安排它在某个地方的CRON中运行 - 这种方法的美妙之处在于,如果他的计算机处于打开状态,浏览器处于打开状态等等并不重要。

#simple ebay example

require 'rubygems'
require 'scrubyt'

ebay_data = Scrubyt::Extractor.define do

     fetch 'http://www.ebay.com/'
     fill_textfield 'satitle', 'ipod'
     submit

     record "//table[@class='nol']" do
       name "//td[@class='details']/div/a"
     end
end

puts ebay_data.to_xml