允许用户更改JSOUP URL

时间:2018-08-10 14:59:14

标签: android jsoup

我的目标是使用户能够根据用户输入的信息来更改URL的末尾。

这是我为JSOUP提供的代码。

private void getWebsite() {
    new Thread(new Runnable() {
        @Override
        public void run() {
            final StringBuilder builder = new StringBuilder();
            final StringBuilder builder2 = new StringBuilder();
            final StringBuilder builder3 = new StringBuilder();

            try {
                Document doc = Jsoup.connect("www.randomurl.com").get();
                Elements links = doc.select("div1");
                Elements links2 = doc.select("div2");
                Elements links3 = doc.select("div3");

                for (Element link : links) {
                    builder.append("\n").append(link.text());
                    builder2.append("\n").append(links2.text());
                    builder3.append("\n").append(links3.text());

                }
            } catch (IOException e) {
                builder.append("Error : ").append(e.getMessage()).append("\n");
            }

            runOnUiThread(new Runnable() {
                @Override
                public void run() {
                    result.setText(builder.toString());
                    worth.setText(builder2.toString());
                    price.setText(builder3.toString());
                }
            });
        }
    }).start();
}

我的目标是要有一个框,用户可以在其中输入信息,并将其应用于URL的最后一部分。例如这样的

try {
     Document doc = Jsoup.connect("www.randomurl.com/" + *userEnteredStringHere*).get();

任何有关如何完成此操作的见识都将很棒!

编辑:-

@Override
public void run() {
    final StringBuilder builder = new StringBuilder();
    final StringBuilder builder2 = new StringBuilder();
    final StringBuilder builder3 = new StringBuilder();
    EditText userInput = findViewById(R.id.userInputWidget);

    try {
        Document doc = Jsoup.connect("www.randomurl.com" + userInput.getText()).get();

1 个答案:

答案 0 :(得分:1)

这不是一个真正的Jsoup问题。 我敢打赌,您的应用程序具有一些GUI,其布局定义为xml文件。 它应包含EditText小部件,以便用户能够输入文本:

<EditText
    android:id="@+id/userInputWidget"
    android:layout_height="wrap_content"
    android:layout_width="fill_parent"
    android:inputType="text"/>

然后您可以在代码中访问它:

 EditText userInput = (EditText) findViewById(R.id.userInputWidget);
 userInput.getText();