我正在尝试使用java程序加载网页的移动版本,以便轻松地从网页中提取少量信息。
在Firefox中,添加用户代理切换器插件后,我添加了一个值为
的新用户代理"Mozilla/5.0 (SymbianOS/9.2; U; Series60/3.1 NokiaE71-1/110.07.127; Profile/MIDP-2.0 Configuration/CLDC-1.1 ) AppleWebKit/413 (KHTML, like Gecko) Safari/413"
在此之后,如果我尝试加载http://www.bbc.co.uk/,则会成功加载网页的移动版本。
但是我试图通过设置User-Agent
使用apache httpclient库对java程序做同样的事情,如下所示:
HttpClient httpclient = new DefaultHttpClient();
HttpProtocolParams.setUserAgent(httpclient.getParams(),
"Mozilla/5.0 (SymbianOS/9.2; U; Series60/3.1 NokiaE71-1/110.07.127; Profile/MIDP-2.0 Configuration/CLDC-1.1 ) AppleWebKit/413 (KHTML, like Gecko) Safari/413");
但我没有获得相同链接的移动版本。
我希望重定向会在这里自动发生,我会在修改用户代理时获取页面的移动版本。
你能帮我解决这个问题吗?
答案 0 :(得分:1)
HttpClient不支持JavaScript redirection。
请注意,HttpClient不是浏览器。重要的是它缺少UI,缓存,HTML渲染器和JavaScript引擎。要了解有关HttpClient范围的更多信息,请参阅HttpClient Primer
也许您可以尝试在这些问题中提出的解决方案
答案 1 :(得分:0)
你是否在HttpClient上设置了跟踪重定向?