我的网站http://findmusicbylyrics.com/使用了<form>
和<input>
代码来输入和提交搜索结果。
相关HTML:
<form action="/search.php" id="cse-search-box">
<div>
<input type="hidden" name="cx" value="partner-pub-1936238606905173:1893984547" />
<input type="hidden" name="cof" value="FORID:10" />
<input type="hidden" name="ie" value="UTF-8" />
<input type="search" name="q" id="main_search_box" autofocus="autofocus" />
<input type="submit" name="sa" value="Search" id="main_search_button" />
</div>
</form>
我想使用Jsoup
输入我的String
,应用搜索并获取搜索的HTML
页/页。
我的代码:
try {
HtmlPage htmlPage = new HtmlPage(Jsoup.connect("http://findmusicbylyrics.com/").get()); // Connect to the HTML page
Element formElement = htmlPage.getElement("form#cse-search-box"); // <form action="/search.php" id="cse-search-box"> tag
Element searchBoxElement = formElement.select("input#main_search_box").first(); // <input type="search" name="q" id="main_search_box" autofocus="autofocus" /> tag
Element searchBoxElement2 = searchBoxElement.attr("input", "Love");
} catch (IOException e) {
e.printStackTrace();
} catch (Exception e) {
e.printStackTrace();
}
如果我离开这里,我如何远离这里,因为我不知道Jsoup
是否可以处理这些事情。
答案 0 :(得分:1)
您很幸运,该网站正在使用GET
将信息传递到搜索页面。
如果我是你,我会做的是使用搜索页面的直接网址并连接我的关键字。不要忘记用+
String keyWord = "hello, its me".replace(" ", "+");
HtmlPage(Jsoup.connect("http://findmusicbylyrics.com/search.php?cx=partner-pub-1936238606905173%3A1893984547&cof=FORID%3A10&ie=UTF-8&q=" + keyWord + "&sa=Search+Lyrics").get());