Dmitry Boytsov Dmitry Boytsov - 20 days ago 6
Android Question

JSoup+table+listview

I only start to use JSoup (as an Android dev too).
I have the following html:

<div class="srchShow" id="baseSrch">
<table>
<tbody>
<tr valign="top">
<td>1.</td>
<td>
<div class="doc_stop" title="Text is not available in the evening"></div>
</td>

<td class="srchitem">
<a href="http://base.consultant.ru/cons/cgi/online.cgi?req=doc;base=LAW;n=98570" onclick="return sendToDoc(this);" target="_blank">
TextTExtTextText
</a>
</td>
</tr>

<tr valign="top">
<td>2.</td>
<td>
<div class="doc_stop" title="Text is not available in the evening"></div>
</td>

<td class="srchitem">
<a href="http://base.consultant.ru/cons/cgi/online.cgi?req=doc;base=LAW;n=133905" onclick="return sendToDoc(this);" target="_blank">
Text2TExt2Text2Text2
</a>
</td>
</tr>


I need to get all information from each
<td class="srchitem">

I mean (link and text)
Then I want to add each combination link&text in individual row

Now I write only this:

public class MainActivity extends Activity {
MyTask mt;
TextView tvInfo;
String URL="http://www.consultant.ru/search/?q=codex";
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);

tvInfo = (TextView) findViewById(R.id.tvInfo);
}

public void onclick(View v) {
mt = new MyTask();
mt.execute(URL);
}

class MyTask extends AsyncTask<String, Void, String> {

@Override
protected void onPreExecute() {
super.onPreExecute();
tvInfo.setText("Please wait...");
}

protected String doInBackground(String... params) {
String what1=null;
String url=params[0];


try {
Document doc = Jsoup.connect(url).get();
Elements divs = doc.select("td.srchitem");
what1=divs.text();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}


return what1;
}

protected void onPostExecute(String result) {
super.onPostExecute(result);
tvInfo.setText(result);
}
}
}


I add one textview and result I publish in it.
Can anyone give me advice and help, how to modify my program that I can do that I describe above (especially how to parse each
<td class="srchitem">
correctly).

Answer

I can only help you with the Jsoup-part of your problem.

Here's how you can get link and it's text (simplified):

final String url = "http://www.consultant.ru/search/?q=codex";
Document doc = Jsoup.connect(url).get();

String absUrl;
String text;

for( Element element : doc.select("td.srchItem > a") ) // Select each link within 'td' with class 'srchItem'
{
    absUrl = element.absUrl("href"); // Get the (absolute) URL of the Link
    text = element.text(); // Get the Text of the Link

    System.out.println(absUrl + "\t->\t" + text); // Output - only as an example
}

Output:

http://www.consultant.ru/document/cons_doc_LAW_98570/   ->  Постановление Правительства РФ от 09.03.2010 N 132 "Об обязательных требованиях в отношении отдельных видов продукции и связанных с требованиями к ней процессов проектирования (включая изыскания), производства, строительства, монтажа, наладки, эксплуатации, хранения, перевозки, реализации и утилизации, содержащихся в технических регламентах Республики Казахстан, являющейся государством - участником таможенного союза"
http://www.consultant.ru/document/cons_doc_LAW_133905/  ->  Приказ ФТС России от 18.04.2012 N 760 "Об утверждении Административного регламента Федеральной таможенной службы и определяемых ею таможенных органов по предоставлению государственной услуги по принятию предварительных решений по классификации товаров по единой Товарной номенклатуре внешнеэкономической деятельности Таможенного союза" (Зарегистрировано в Минюсте России 03.08.2012 N 25108)
http://www.consultant.ru/document/cons_doc_LAW_123769/  ->  Постановление Главного государственного санитарного врача РФ от 14.11.2001 N 36 (ред. от 06.07.2011) "О введении в действие Санитарных правил" (вместе с "СанПиН 2.3.2.1078-01. 2.3.2. Продовольственное сырье и пищевые продукты. Гигиенические требования безопасности и пищевой ценности пищевых продуктов. Санитарно-эпидемиологические правила и нормативы", утв. Главным государственным санитарным врачом РФ 06.11.2001) (Зарегистрировано в Минюсте РФ 22.03.2002 N 3326)
http://www.consultant.ru/document/cons_doc_LAW_111290/  ->  Постановление Главного государственного санитарного врача РФ от 18.04.2003 N 59 (ред. от 23.12.2010) "О введении в действие Санитарно-эпидемиологических правил и нормативов СанПиН 2.3.2.1293-03" (вместе с "СанПиН 2.3.2.1293-03. 2.3.2. Продовольственное сырье и пищевые продукты. Гигиенические требования по применению пищевых добавок. Санитарно-эпидемиологические правила и нормативы", утв. Главным государственным санитарным врачом РФ 18.04.2003) (Зарегистрировано в Минюсте РФ 02.06.2003 N 4613)
http://www.consultant.ru/document/cons_doc_LAW_104122/  ->  "МУ 2.1.4.1184-03. 2.1.4. Питьевая вода и водоснабжение населенных мест. Методические указания по внедрению и применению санитарно-эпидемиологических правил и нормативов СанПиН 2.1.4.1116-02 "Питьевая вода. Гигиенические требования к качеству воды, расфасованной в емкости. Контроль качества". Методические указания" (вместе с "Методикой бактериологического контроля емкостей и укупорочных изделий") (утв. Главным государственным санитарным врачом РФ 15.01.2003) (ред. от 07.07.2010)
http://www.consultant.ru/document/cons_doc_LAW_99651/   ->  Приказ Ростехрегулирования от 26.03.2010 N 867 "Об утверждении перечня используемых в Республике Казахстан документов в области стандартизации, а также документов, содержащих правила и методы исследований (испытаний) и измерений, в том числе правила отбора образцов, необходимых для применения и исполнения обязательных требований, предусмотренных перечнем, утвержденным Постановлением Правительства Российской Федерации от 9 марта 2010 г. N 132, и осуществления оценки соответствия в отношении отдельных видов продукции и связанных с требованиями к ней процессов"
http://www.consultant.ru/document/cons_doc_LAW_130011/  ->  "МУ 4.1/4.2.2486-09. 4.1/4.2. Методы контроля. Химические и микробиологические факторы. Идентификация, в том числе в целях выявления фальсификации, соковой продукции из фруктов и овощей. Методические указания" (утв. Роспотребнадзором 20.02.2009)
http://www.consultant.ru/document/cons_doc_LAW_130010/  ->  "МУ 4.1/4.2.2484-09. 4.1/4.2. Методы контроля. Химические и микробиологические факторы. Оценка подлинности и выявление фальсификации молочной продукции. Методические указания" (утв. Роспотребнадзором 11.02.2009)
http://www.consultant.ru/document/cons_doc_LAW_123237/  ->  Определение Верховного Суда РФ от 29.11.2011 N КАС11-673 <Об оставлении без изменения решения Верховного Суда РФ от 06.10.2011 N ГКПИ11-874, которым отказано в удовлетворении заявления о признании частично недействующим Приложения 7 к СанПиН 2.3.2.1078-01, утв. Постановлением Главного государственного санитарного врача РФ от 14.11.2001 N 36>
http://www.consultant.ru/document/cons_doc_LAW_120673/  ->  Решение Верховного Суда РФ от 06.10.2011 N ГКПИ11-874 <Об отказе в удовлетворении заявления о признании частично недействующим Приложения 7 к СанПиН 2.3.2.1078-01, утв. Постановлением Главного государственного санитарного врача РФ от 14.11.2001 N 36>
Comments