Here's another 1.

Code:
alias imdb {
  unset %imdb.search*
  if ($sock(imdb.search)) { sockclose imdb.search }
  sockopen imdb.search www.imdb.com 80
  sockmark imdb.search $+(/find?q=,$repSpaces($1-))
}
alias -l repSpaces { return $replace($1-,$chr(32),+) }
alias -l _GET {
  var %% = sockwrite -n $sockname , %location = $sock($sockname).mark
  %% GET %location HTTP/1.0
  %% Host: www.imdb.com
  %%
}
alias -l _LOCATION {
  var %x = $regsubex($1-,m@^http://[^/]*@,)
  noop $regex(%x,m@^(/.*?/.*?/)@)
  sockopen imdb.title www.imdb.com 80
  sockmark imdb.title $regml(1)
  sockclose imdb.search
  unset %imdb.search*
}


on *:sockopen:imdb.search:{ _GET }

on *:sockread:imdb.search:{
  var %s | sockread %s
  if (!%imdb.search_body) {
    if (!%s) { set %imdb.search_body 1 }
    if ($regex(%s,/Location: (.*)$/)) { _LOCATION $regml(1) | return }
  }
  elseif ($regex(%s,/<p><b>Popular Titles<\/b> \(Displaying \d+ Results?\)<ol><li>\s+<a href="([^"]*?)"/)) {
    _LOCATION $regml(1) | return
  }
  elseif ($regex(%s,/<b>No Matches.<\/b>/)) { echo -sg There were no matches. | unset %imdb.search* }
}

on *:sockopen:imdb.title:{ _GET }

on *:sockread:imdb.title:{
  var %s | sockread %s
  if ($regex(%s,/<title>(.*?)<\/title>/)) { echo -sg Title: $regml(1) | return }
  elseif ($regex(%s,/<b>User Rating:<\/b>/)) { set -z %imdb.rate 5 | return }
  if (%imdb.rate && $regex(%s,/<b>(.*?)<\/b>/)) { echo -sg Rating: $regml(1) | unset %imdb.rate | return }
}