کلیدستان

نسخه‌ی کامل: نمایش قسمتی از یک سایت در برنامه نویسی اندروید
شما در حال مشاهده نسخه آرشیو هستید. برای مشاهده نسخه کامل کلیک کنید.
باسلام و عرض خسته نباشید و تشکر از مطالب عالیتان
من یک سوالی در رابطه با برنامه نویسی اندروید داشتم که ممنون می شوم راهنمایی ام کنید.
من می خواهم در برنامه نویسی اندروید قسمتی مشخص از یک سایت را نشان دهم (کل سایت را نه فقط یک قسمت مشخص را)
مثلا من کدهایی را نوشتم ولی تمام صفحه را نمایش می دهد نه فقط آن بخشی که من می خواهم.
این آدرس صفحه است :http://eform.irancell.ir/portal/home/?88...9%87%D8%A7
و من می خواهم فقط در بخش (مدیریت هزینه با بسته های ترکیبی ایرانسل) فقط عکس ها را نمایش دهد.

کد پی‌اچ‌پی:
final WebView webview = (WebViewfindViewById(R.id.webView4);
webview.getSettings().
setJavaScriptEnabled(true);
webview.setWebViewClient(new WebViewClient() {
@
Override
public void onPageFinished(WebView viewString url) {
webview.loadUrl("javascript:(function() { " +
"document.getElementById('WebPart_94e54b83_f6e0_471f_88a5_10399ead1e0b').style.display='none'; " +
"})()");

}
});
webview.loadUrl("http://eform.irancell.ir/portal/home/?88440/%D8%A8%D8%B3%D8%AA%D9%87-%D9%87%D8%A7"); 

ممنون می شوم راهنمایی ام کنید
لطفا یکی راهنمایی ام کنه.خیلی عجله دارم و یک ماهی است که در حال کار کردن رو این موضوعم و به نتیجه ای نرسیدم.
سلام.
ابتدا در مورد کدی که ذکر کرده بودید، باید نکته ای رو تذکر بدم. شما در کدها، ابتدا صفحه را در WebView بارگذاری  می کنید و قصد دارید که پس از بارگذاری، با استفاده از روش onPageFinished (که یعنی اجرای کدهای آن پس از پایان بارگذاری کامل صفحه)، کدهایی را اجرا نمایید. اما روش صحیح به صورت زیر است (مراحل زیر) :

1- دریافت پاسخ صفحه (کد صفحه) (با استفاده از روش های دریافت پاسخ صفحه) (کلید شماره 312 یا کلید شماره 313)
2- استخراج بخشی از کدهای آن که مد نظرمان است (معمولا از قواعد regular expressions استفاده می شود و یا از روش های آماده در کتابخانه های اندروید)
3- اگر قصد نمایش در WebView را داریم، می توانیم بخش استخراج شده را در کدهای چارچوب استاندارد HTML قرار بدهیم
4- نمایش بخش استخراج شده (به همراه اصلاحات، البته اگر نیاز بوده) در WebView

منظورمان از کدهای چارچوب استاندارد HTML ، کدهای مشابه کد زیر می باشد :

کد پی‌اچ‌پی:
<!doctype html>
<
html>
<
head>
<
meta charset="utf-8">
<
title>Untitled Document</title>
</
head>

<
body>
</
body>
</
html

در مورد استفاده از از قواعد regular expressions و یا استفاده از روش های آماده در کتابخانه های اندروید، بستگی دارد که تا چه حد پردازش شما پیچیده باشد. گاهی موارد خاصی مد نظرتان است که تنها با استفاده از عبارات قاعده مند (regular expressions) قابل اجرا می باشد و گاهی هم، مثلا قصد دارید که کدهای بین یک زوج تگ div با یک نام id یا class خاص را به دست آورید که برای آن، روش های آماده ای در خود اندروید وجود دارد. به عنوان مثال، لینک زیر را ببینید :

http://stackoverflow.com/questions/12948...t-response

کد ذکر شده در آن :

کد پی‌اچ‌پی:
DefaultHttpClient client = new DefaultHttpClient();
HttpGet get = new HttpGet(url.toURI());
HttpResponse resp client.execute(get);

String content EntityUtils.toString(resp.getEntity());
Document doc Jsoup.parse(content);
Elements ele doc.select("div.classname"); 

در کد بالا، محتوای بین تمامی زوج تگ های div با نام کلاس (class) برابر classname از پاسخ صفحه (کد صفحه) استخراج می شود.

Flower