From 537f3e5f072aac0629df1520b723846f5dc41639 Mon Sep 17 00:00:00 2001 From: Noe Rubinstein Date: Mon, 17 Sep 2012 16:37:05 +0200 Subject: add compiled file just in case --- digikey.js | 49 +++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 49 insertions(+) create mode 100644 digikey.js diff --git a/digikey.js b/digikey.js new file mode 100644 index 0000000..9f4a571 --- /dev/null +++ b/digikey.js @@ -0,0 +1,49 @@ +// Generated by CoffeeScript 1.3.3 +(function() { + var query_parse, server, service, url, webpage; + + webpage = require('webpage'); + + server = require('webserver').create(); + + query_parse = /search\/([^&]+)/; + + url = 'http://search.digikey.com/scripts/DkSearch/dksus.dll?Detail&name='; + + service = server.listen(8080, function(request, response) { + var page, search, thisUrl, tries; + page = webpage.create(); + search = query_parse.exec(request.url); + if (!((search != null) && (search[1] != null))) { + console.log("Invalid URL: " + request.url); + response.statusCode = 404; + response.write("try search/componentname"); + response.close(); + return; + } + console.log(search[1]); + thisUrl = url + search[1]; + tries = 0; + return page.open(thisUrl, function(status) { + if (status !== "success") { + response.statusCode = 503; + response.write("MORT ET DESOLATION"); + return response.close(); + } else { + if (page.evaluate(function() { + return typeof test === "function"; + })) { + page.evaluate(function() { + return test(); + }); + return console.log("TRYING AGAIN (try " + (tries += 1) + ")"); + } else { + response.statusCode = 200; + response.write(page.content); + return response.close(); + } + } + }); + }); + +}).call(this); -- cgit v1.2.3