From 7970888d13bfd44195060ea01d79cbbba8583863 Mon Sep 17 00:00:00 2001 From: Anthony Lieuallen Date: Fri, 19 May 2006 00:14:34 +0000 Subject: [PATCH] use MSN API instead of screen scraping --- content/resurrect.js | 21 ++++++++++----------- 1 file changed, 10 insertions(+), 11 deletions(-) diff --git a/content/resurrect.js b/content/resurrect.js index b6eb331..8ce58ca 100644 --- a/content/resurrect.js +++ b/content/resurrect.js @@ -132,21 +132,20 @@ var resurrect={ break; case 'msn': - //FD382E93B5ABC456C5E34C238A906CAB2DEEB5D6 - //ugh, they've got an API but .. SOAP? blech too complicated - - var searchUrl='http://search.msn.com/results.aspx?q='+encUrl; + var xmlUrl=rawUrl.replace('&', '&'); + var soapBody='FD382E93B5ABC456C5E34C238A906CAB2DEEB5D6'+xmlUrl+'en-USOffWeb01All'; var xhr=new XMLHttpRequest(); - xhr.open('GET', searchUrl, false); - xhr.send(null); + xhr.open('POST', 'http://soap.search.msn.com/webservices.asmx', false); + xhr.setRequestHeader('Content-Type', 'text/xml; charset=ISO-8859-1'); + xhr.setRequestHeader('SOAPAction', '""'); + xhr.send(soapBody); try { - var m=xhr.responseText.match(/Cached page/); - gotoUrl=m[1]; - gotoUrl=gotoUrl.replace('&', '&'); - } catch (e ) { - gotoUrl=searchUrl; + var c=xhr.responseXML.getElementsByTagName('CacheUrl'); + gotoUrl=c[0].textContent; + } catch (e) { + gotoUrl='http://search.msn.com/results.aspx?q='+encUrl; } break;