2017-03-17 165 views
1

嗨,我真的很新的編碼。我試圖從一個特定的網站http://www.rfebs.es/estadisticas/2017/liga/B_res.php拉文本(HTML)使用jsoup,但我似乎無法做到這一點。這裏是我的代碼,提前謝謝!Jsoup代碼不能正常工作

package davidgb.baseballspain; 


import android.os.AsyncTask; 
import android.os.Bundle; 
import android.support.v7.app.AppCompatActivity; 
import android.view.View; 
import android.widget.Button; 
import android.widget.TextView; 

import org.jsoup.Jsoup; 
import org.jsoup.nodes.Document; 



public class MainActivity extends AppCompatActivity { 
TextView texx; 
Document doc; 
@Override 
protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.activity_main); 

    texx=(TextView)findViewById(R.id.textp); 
    Button but1 = (Button)findViewById(R.id.but); 
    but1.setOnClickListener(new View.OnClickListener() { 
     @Override 
     public void onClick(View v) { 
      new doit().execute(); 
     } 
    }); 
} 

public class doit extends AsyncTask<Void, Void, Void> { 
    String words; 
    @Override 
    protected Void doInBackground(Void... params) { 
     try { 
      doc = Jsoup.connect("http://www.rfebs.es/estadisticas/2017/liga/B_res.php").get(); 
      words= doc.text(); 
     } catch (Exception e) { 
      e.printStackTrace(); 
     }return null; 
    } 
    @Override 
    protected void onPostExecute(Void aVoid) { 

     super.onPostExecute(aVoid); 
     texx.setText(words); 
    } 
} 
} 
+2

出了什麼問題? – bc004346

回答

0

修改類,這樣你就不需要在不同的線程訪問公共變量:

public class doit extends AsyncTask<Void, Void, String> { 

    @Override 
    protected String doInBackground(Void... params) { 
     try { 
      Document doc = Jsoup.connect("http://www.rfebs.es/estadisticas/2017/liga/B_res.php").get(); 
      return doc.text(); 
     } catch (Exception e) { 
      e.printStackTrace(); 
     } return null; 
    } 

    @Override 
    protected void onPostExecute(String result) { 
     texx.setText(result); 
    } 
} 

編輯1

我重新跑在我的模擬器完全相同的代碼它就像一個魅力。附上截圖作爲證明。一注:請確保您已在清單中啓用INTERNET

<uses-permission android:name="android.permission.INTERNET" /> 

enter image description here

+0

仍然無法正常工作。應用程序意外停止工作... –

+0

@DavidGarciaBallester請提供調試日誌。不知道什麼是例外情況以及它發生在何處,不可能猜出問題所在。我成功地使用了這種模式數百次。異常可能在其他地方。 – bc004346

+0

@DavidGarciaBallester看到我的編輯證明它正在工作;確保你已啓用INTERNET權限 – bc004346