Ich möchte eine Liste in einer Website mit Java
analysieren. Ich weiß bereits, wie man die Liste mit Jsoup
analysiert - also ist dieser Teil fertig und funktioniert."Klicken" auf Website-Schaltfläche
Um jedoch die Liste in der Webseite anzuzeigen, muss ich einen Knopf drücken und ich weiß nicht, wie man das mit Java macht. Ich habe bereits eine ähnliche Frage zu SO gefunden: Programmatically click a webpage button. Ich denke, ich könnte HttpURLConnection
und KVP
dafür verwenden, aber ich weiß nicht, wie man es zur Arbeit bringt.
Der Listenwähler sieht so aus: Ich möchte die Schaltfläche Alle anzeigen drücken.
-Code, die ich in der HTML-Datei gefunden:
<div class="row top-buffer">
<div class="col-md-6 col-sm-4 col-xs-6 nopadding">
<button type="button" id="clearselection" class="btn btn-knx" style="float: right; margin: 0px">Clear selection</button>
</div>
<div class="col-md-6 col-sm-4 col-xs-6 nopadding">
<button type="button" id="showall" class="btn btn-knx align-right" style="float: left">Show all</button>
</div>
</div>
Weiß jemand, wie dies geschehen ist? ..es ist übrigens nicht nur eine Taste die ich auf dieser Website drücken muss sonst würde ich es manuell machen. Sobald ich weiß, wie es mit einem Knopf gemacht wird, kann ich es auch für die anderen herausfinden.
UPDATE: Ich möchte darauf hinweisen, dass ich keinen Zugriff auf die HTML-Datei habe. Ich möchte grundsätzlich einen Knopfklick eines Webseitenbesuchers simulieren. Es tut mir leid, dass ich nicht klar war.
UPDATE-2: Ich habe gerade angefangen, wieder daran zu arbeiten. Ich fand den Javascript
Code für die Schaltfläche auf der Webseite:
$('#showall').on('click', function() {
$('.mask').show();
$('#name').attr('value', '');
$("#letter option").removeAttr('selected');
$("#letter option[value='']").attr('selected', true);
$.ajax({
url: '/src/international/Data/partListAjax',
type: 'POST',
dataType: "html",
data: {
data: $('#filterForm').serialize(),
wTexts: {"Company":"Company","Country":"Country","Name":"Name","Total":"Total","search":"Search","matches_found":"matches found","search_no_results":"Your search did not match any results."},
national: 'null',
currentProject: 'nma-en'
},
success: function (data) {
if (data.indexOf("Allowed memor") >= 0) {
$('#accordion2').html("<div class='alert alert-warning' role='alert'>Please use our search engine</div>");
$('.mask').hide();
$('#clearselection').attr('disabled', 'disabled');
$('#showall').attr('disabled', 'disabled');
} else {
$('#accordion2').html(data);
$('.mask').hide();
$('#clearselection').attr('disabled', 'disabled');
$('#showall').attr('disabled', 'disabled');
}
}
});
});
Wenn die Tastenfunktion Aufruf nicht funktioniert, ich werde versuchen, direkt senden/löst den Ajax
Befehl, der in der Funktion enthalten ist.
Sie benötigen einen Browser-Client irgendeiner Art, wie wäre es mit einem Webview. Siehe https://stackoverflow.com/questions/30113445/how-to-perform-a-button-click-inside-a-webview-android – petey
Bitte gehen Sie durch diese, https: //www.codeproject.com/Articles/392603/Android-addJavaScriptInterface –
Das missbräuchliche 'android'-Tag entfernt –