Thread 381cbc51

The reason there is a 500 error is that Google’s servers are tripping up on the _rnr_se variable now includes characters like +/=. Looks like a base64, but watching the network traffic in Firebug shows that Google’s javascript sends the raw value without any modifications.

So you need to replace line 90 with the following line. That’s it! No other changes are necessary.

rnrse = CGI.escape(newres.match(/'_rnr_se': '([^']+)'/)[1])

(The change: Surround the matched value in a CGI.escape call, so that +/= is url encoded for Google’s sake.)

Evaryont — Sep 07, 2011 01:07 pm

Also, it’s working fine in Arch Linux, running ruby v1.9.2. :-)