|
Revision 10458, 0.6 kB
(checked in by drry, 7 months ago)
|
|
|
-
Property svn:executable set to
*
|
| Line | |
|---|
| 1 | #!/usr/bin/env ruby |
|---|
| 2 | require 'cgi' |
|---|
| 3 | require 'uri' |
|---|
| 4 | require 'net/http' |
|---|
| 5 | Net::HTTP.version_1_2 # magic |
|---|
| 6 | |
|---|
| 7 | print "Content-type:text/html\n\n" |
|---|
| 8 | cgi = CGI.new |
|---|
| 9 | url = URI.parse(cgi['url']) |
|---|
| 10 | cond = cgi['cond'] |
|---|
| 11 | |
|---|
| 12 | response = Net::HTTP.start(url.host, url.port) do |http| |
|---|
| 13 | res = http.get(url.request_uri, 'User-Agent' => 'IDAvailabilityRetriever/1.0') |
|---|
| 14 | unless res.is_a?(Net::HTTPSuccess) |
|---|
| 15 | print 'null' |
|---|
| 16 | exit |
|---|
| 17 | end |
|---|
| 18 | |
|---|
| 19 | if cond == '' |
|---|
| 20 | print 'found' |
|---|
| 21 | exit |
|---|
| 22 | end |
|---|
| 23 | |
|---|
| 24 | cond = CGI.unescape(cond) |
|---|
| 25 | |
|---|
| 26 | require 'rubygems' |
|---|
| 27 | require 'hpricot' |
|---|
| 28 | doc = Hpricot(res.body) |
|---|
| 29 | result = doc.search(cond) |
|---|
| 30 | print result.size == 1 ? 'null' : 'found' |
|---|
| 31 | end |
|---|