2016-03-20 2 views
0

Я действительно новичок в JSOUP, и я разрабатываю проект андроида для выбора курса. Он выходит на веб-сайт колледжа, используя веб-просмотр. Студент регистрируется в системе, тогда проект должен проанализировать стенограмму студента.JSOUP- не может анализировать относительный URL

колледж веб-сайт, например: www.campus.bk.edu.da

Student транскрипт URL является: www.campus.bk.edu.da/student_trans

мой код ниже; Я запускаю этот код после входа пользователя на сайт.

String ht =""; 
String url = "https://campus.bk.edu.da/student_trans.asp"; 
Document doc =Jsoup.parse(url); 
ht=doc.html(); 

Когда я запустил это, я получил html сайта paren; www.campus.bk.edu.da. Где я делаю неправильно?

Мой Java-код:

campusWeb.loadUrl("http://campus.bk.edu.da/"); 

campusWeb.setWebViewClient(new WebViewClient() { 
    @Override 
    public boolean shouldOverrideUrlLoading(WebView view, String url) { 
     view.loadUrl(url); 
     if (url.toString().equals("https://campus.bk.edu.da/student_trans.asp")) { 
      new soup().execute(); 
     } 
     return true; 
    } 
}); 
+0

Вы имеете в виду, что вы регистрируете свою учетную запись в своем браузере, а затем запускаете программу? –

+0

Нет, я добавил свой код Java выше, теперь его более понятно. Я имею в виду, когда пользователь открывает стенограмму из веб-приложения приложения. – asyaben

+0

Фрагменты кода предназначены для использования с кодом, который может выполняться браузером, например HTML/CSS/JavaScript. Java не такой же, как JavaScript, поэтому не используйте его здесь. Вместо этого используйте * образец кода * ('{}' значок в меню редакторов), чтобы Stack Overflow применял правильное форматирование для вашего кода (например, цвет для ключевых слов). – Pshemo

ответ

0

Jsoup.parse метод пытается разобрать отправил HTML-код (или его фрагмент) в DOM, но проблема в том, что вы не отправлял HTML, но URL. Потому что если в результате вы получили DOM, который содержит

<html> 
<head></head> 
<body> 
    https://campus.bk.edu.da/student_trans.asp 
</body> 
</html> 

Если вы хотите, чтобы получить документ, представляющий HTML код из предоставленной URL в первую очередь необходимо подключиться к нему. Так что попробуйте с

Document doc = Jsoup.connect(url).get(); 
+0

Также убедитесь, что этот URL-адрес верен или сайт находится в сети. – Pshemo

+0

Спасибо за ответ Pshemo. Я изменил код, как вы сказали, но он снова дает html https: //campus.bk.edu.da, а не student_trans. Я также добавил свой код Java выше, может быть, ошибка в моем коде веб-просмотра. Можете ли вы проверить, пожалуйста? – asyaben

+0

@asyaben Честно говоря, я не могу получить доступ к сайту с вашего URL-адреса. Я даже не могу посетить сервер campus.bk.edu.da, так что вам не поможет. – Pshemo

0

Возможно, вы получаете переадресацию поболеть URL, вызываемый 404 (файл не найден) ошибки, потому что https://campus.bk.edu.da/student_trans.asp не ehxist, но https://campus.bk.edu.da/student_trans, то есть без точек жереха в конце.

+0

Спасибо за ответ, я попробовал, но это не сработало. – asyaben

Смежные вопросы