スペースと「http://」-s を含む Watir リンクをたどろうとしています。手動で行うと、次のようなものをコピーして貼り付けることができます。
http://somewebsite.com/car%20navigation%20systems/products~NS-1~linkin_id-8016137~cid-3220953854?ef_id=test:@a-b
ブラウザのアドレス バーに移動し、適切なページを開きます。この文字列を ruby コードの変数 url_string に割り当てて "puts url_string" を実行すると、その文字列がまさにこのように表示されます (%20-s が含まれています)。watir webdriver の「b.goto url_string」で使用すると、ブラウザに「car%20navigation%20systems」ではなく「car navigation systems」と表示され、明らかに動作しません。
「require open-uri」で「b.goto url_string」を実行する代わりに「b.goto URI::encode(url_string)」を使用すると、ブラウザで %20 が %2520 ("car%2520navigation% 2520systems") – また、機能していません。
b.goto で適切に使用するには、そのような文字列 (ブラウザーに手動でコピーして貼り付けても問題ありません) をどうすればよいですか?
http://somewebsite.com/car%20navigation%20systems/products~NS-1~linkin_id-8016137~cid-3220953854?ef_id=test:@a-b
http://somewebsite.com/somepage.cmp?bm=513&BEFID=1398&aon=%5E1&MerchantID=26574&crawler_id=1903439&dealId=U4KvhohLLfNITUSw9xH1PA%3D%3D&url=http%3A%2F%2Flink.mercent.com%2Fredirect.ashx%3Fmr%3AmerchantID%3DREI%26mr%3AtrackingCode%3D4B0E6F02-7411-E111-804A-A8C6AF702B72%26mr%3AtargetUrl%3Dhttp%3A%2F%2Fwww.rei.com%2FOM%2Fsku%2F8108320014%253fcm_mmc%253dcse_shopping-_-datafeed-_-product-_-na%26sdc_id%3D%7Bsdc_id%7D&linkin_id=8011139&Issdt=&searchID=On29U8JKSm&DealName=Garmin+Edge+800+Wireless+Bike+Computer+Color+BLACK&dlprc=449.95&AR=23&NG=29&NDP=40&PN=1&ST=7&FPT=DNSR&NDS=&NMS=&MRS=&PD=104443840&brnId=2455&IsFtr=0&IsSmart=0&op=&CM=&RR=23&IsLps=0&code=&acode=602&category=&HasLink=&ND=&MN=&GR=&lnkId=&SKU=8108320014&IsGtb=0&SPT=CROSSGV&MNID=22406&EF=TEST300%3A3&sig=e917ca16cfc85bedd51b2445ee2aa566f1ccc319&CT=14
更新: これまでのところ b.goto url_string.gsub("%20", "+") はほとんどの URL で機能しました。