Как использовать встроенный движок javascript для запуска скрипта на веб-странице? - PullRequest
0 голосов
/ 11 августа 2010

Я хочу показать текст песни для моего плеера.Раньше я использовал lyricsplugin.com, потому что там было много английской и русской лирики, но недавно они изменили свой веб-сайт со статической страницы на страницу с поддержкой ajax.Поиск текстов песен происходит по следующей схеме:

http://www.lyricsplugin.com/winamp03/plugin/?artist=Linkin%20Park&title=Numb

Показывает пустую страницу, и это при загрузке тела:

javascript:getContent('Linkin%20Park', 'Numb', '1281528101', '5e22e4e3979026a9af59ee16ff82fe1f')

, а getContent выглядит следующим образом:

function getContent(artist, title, time, check) { 
xmlHttp = GetXmlHttpObject();
if(xmlHttp == null)
{
    return;
}
var url = "content.php?artist=" + artist + "&title=" + title + "&time=" + time + "&check=" + check;
xmlHttp.onreadystatechange = stateChanged;
xmlHttp.open("GET", url, true);
xmlHttp.send(null);
}

stateChanged() затем помещает ответ в соответствующий div на странице.

Так что, я думаю, я могу загрузить страницу и построить дерево DOM, так как это XHTML.Как использовать встроенный движок Rhino для выполнения JavaScript и предпочтительно переопределить функцию stateChanged()?Кажется, я не могу вызвать этот сценарий content.php напрямую.

Ни на одном другом ресурсе нет такого количества текстов (особенно на русском), за исключением lyrics.wikia.com, но они не допускают скрининг экрана.

ОБНОВЛЕНИЕ:

lyricsplugin, похоже, использует justsomelyrics.com и есть окно пользовательского поиска Google.Как я могу получить к нему доступ из Java?

1 Ответ

0 голосов
/ 11 августа 2010

Самым простым является компонент браузера SWT . Просто позвоните setURL(String), и он отобразит веб-страницу. Это дает вам полноценный браузер с Javascript и всем прочим.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...