小编典典

Apache HttpClient 4和JavaScript

java

我使用Apache
HttpClient访问网页。我想单击链接,但是链接是javaScript,我如何处理对javascript链接的点击并遵循url重定向?

示例javascript和html代码:

<a href="javascript:send(32023, 'YGHN_JKM', '8LMK');"> link</a>


function send(content_id, fic, cgRate) {
        var params = new Hash();
        params.set('content_id', content_id);
        params.set('tool', fic);
        params.set('cgRate', cgRate);

        new Ajax.Updater('return', '/mypkg/tools', {
            method: 'post',
            parameters: params,
            evalScripts: true,
            onInitialize: new Effect.Appear('loader', {duration: 0.0}),
            onComplete: new Effect.Fade('loader', {duration: 1.2})
        });
}

阅读 290

收藏
2020-09-26

共1个答案

小编典典

您似乎要尝试使用AJAX来获取链接的页面。仅使用普通的HTTPClient很难模仿这种行为。HTTPClient用于“原始”
HTTP通信,而不用于浏览器仿真。相反,我建议使用类似于HtmlUnit的东西,它可以模拟浏览器并执行页面上的JavaScript:http
//htmlunit.sourceforge.net/
HtmlUnit具有相当好的JavaScript支持,但并不完美。如果您需要100%完美的浏览器仿真,则需要使用诸如Selenium之类的浏览器自动化框架:http
//seleniumhq.org/
2020-09-26