March 14, 2008

Monitor Web page changes with Specto

Author: Shashank Sharma

There's no dearth of Web feed readers for Linux that allow you to keep tabs on new postings on a Web site. But what if the Web site or page you're interested in doesn't provide a feed? Specto is a nifty little Python application that lets you monitor changes to static or dynamic pages. You can configure Specto to monitor changes to wiki pages, blog posts, forum threads, your email inbox, and even files and folders on your own system. An unobtrusive pop-up from its system tray icon informs you of all changes, so you don't have to hop around looking for updates.

Specto is available from the software repositories for most distributions, or you can install it from the compressed tarball if you want the most recent release. First explode the tarball with the tar zxvf specto-0.2.2.tar.gz command. Next, browse into the specto-0.2.2/ directory. You don't have to install Specto to begin using it; the command ./ launches Specto. But Fedora and Ubuntu users can respectively use the su -c "python install" or sudo python install command to install Specto.

Once installed, you can either launch Specto from the terminal with the command specto or from the Applications -> Accessories menu. Upon launch, Specto displays its Notifications window.

Specto refers to all targets that have to be monitored as watches. Before you begin adding watches that need to be monitored for updates, click Edit -> Preferences, and in the Preferences window click Always show the icon in the notification area. From this Preferences window, you can also configure Specto to play a sound when any watch is updated. You can use the Duration (in seconds) slider bar at the top of the Preferences window to specify the duration for which the update pop-up should be visible.

Clicking the Add button in the Notifications window opens the Add a Watch window. If you wish to monitor, for instance, Slashdot for updates, type Slashdot in the Name field and choose Website from the Watch Type drop-down list. You can specify the Refresh Interval, which indicates how often Specto should check for updates, in seconds, minutes, hours, or days. Next, fill in address of the web page in the URL field and specify the Error Margin. The error margin is especially important for sites like Slashdot where ads change often and may fool Specto into believing the content has been updated. By default, the error margin is 2%. An Error Margin of 0% means that every minor change is considered an update. Specto works by calculating the difference in file size after each check to determine if there has been an update. Click the Add button when you're done and Specto will begin watching the page for updates.

Now you can create a notification for your Gmail account. Click the Add button in the Notification window and in type Gmail in the Name field. Select Email from the Watch Type drop-down list. Specify a Refresh Interval and click the Gmail radio button. Enter your username and password in the respective fields and click Add. You can also monitor POP3 or IMAP accounts. For this, instead of clicking the Gmail radio button, click either POP3 or IMAP. You'll now have to fill in the Host information along with your username and password. And you can also click the Use SSL check box if that's how your account is configured. Click Add to finish setting up the notification.

You can similarly set watches for Files and Folders by selecting Files or Folders from the Watch Type drop-down list. You'll have to then click either File or the Folder radio button and specify the file or folder to watch.

To temorarily stop Specto from monitoring a particular watch, click the Active check box to the left of that watch in the Notification window. If you wish to edit the settings for any watch, click the watch and then click the Edit button on the bottom right of the window. A list of all watches you've set is maintained in the ~/.specto/watches.list file. Surprisingly, if you've set a watch for your email, you'll find that this plain text file also lists your username and password!

Except for this security flaw, Specto is ideal when you wish to monitor a wiki page or a blog post to see if anyone replies to your comment, or watch a forum thread without registering on the forum and subscribing for email notifications. You can even set a watch on a project's changelog or bugs or news page to remain informed.


  • Internet & WWW
  • Tools & Utilities
Click Here!