رفتن به مطلب
  • 0

خطا در کتابخانه Jsoup


b4a developer

سوال

سلام دوستان بنده خواستم با کتابخونه jsoup کار کنم برای گت المنت کردن ولی مثال هاشو وقتی اجرا میکنم این خطا میاد

 

android.os.NetworkOnMainThread

لینک ارسال
به اشتراک گذاری در سایت های دیگر

12 پاسخ به این سوال تاکنون داده شده است

ارسال‌های توصیه شده

در ۱۴۰۱/۱/۱۹ در ۱۰:۰۴، b۴a developer گفته است:

این از کدی که نوشتم و خطا

 

fix_4ze5.jpg

کتابخونه ای که استفاده کردین قدیمی هست و منسوخ شده. نسخه آخر بیسیک رو دانلود کنید و کتابخونه okhttputils2 رو باید تیک بزنید

لینک ارسال
به اشتراک گذاری در سایت های دیگر

مشکل کتابخونه حل شد.فقط خواستم اینو با این کتابخونه بنویسم

WebViewExtras1.executeJavascript(WebView1,"document.getElementsByName('UrlBox')[0].value = '"&EditText1.Text&"';")

 

یعنی مقدار یه تکست داخل سایت رو با ادیت تکست داخل برنامه مقدار دهی کنم

لینک ارسال
به اشتراک گذاری در سایت های دیگر

در ۱۴۰۱/۱/۱۷ در ۱۰:۰۹، b۴a developer گفته است:

NetworkOnMainThread

این خطا زمانی اتفاق می افته که بخواین تو ترد اصلی درخواست http بدین.باید حتما تو نخ غیر از نخ اصلی ازش استفاده کنید.

از کتابخونه asynctask یا threading استفاده کنید

لینک ارسال
به اشتراک گذاری در سایت های دیگر

از کتابخونه persianasynctask استفاده کنید

Dim prAsync As PersianAsyncTask

prAsync.Initialize("async")
prAsync.Execute(Null)



Private Sub async_DoInBackground(Params() As Object) As Object
	'اینجا از سواپ استفاده کن
	Return Null
End Sub
Private Sub async_PostExecute(Result As Object)
	اینجا کارهایی که میخوای روی یوآی انجام بده.
End Sub

 

لینک ارسال
به اشتراک گذاری در سایت های دیگر

اصلا متوجه کدتون نشدم خواهشا مثال بزنید این کد که هیچی ازش معلوم نیست

 

    Private htmls As String =     js.connect("https://answercenter.ir")
    
    
    Private lstTitle As List = js.selectorElementText(htmls,"title")
    t.Text = lstTitle.Get(0)

 

این کدرو توی قسمت DoInBackground نوشتم ولی کار نکرد

 
لینک ارسال
به اشتراک گذاری در سایت های دیگر

عزیز شما تو متد DoInBackground نمیتونید ui رو آپدت کنید. باید حتما تو متد  PostExecute این کار رو انجام بدین. به ترتیب زیر عمل کنید.

Private Sub async_DoInBackground(Params() As Object) As Object
   Private htmls As String = js.connect("https://answercenter.ir")
   Return js.selectorElementText(htmls,"title")
End Sub

 

Private Sub async_PostExecute(Result As Object)
 dim listObject as List=Result
 dim txt as String=listObject.get(0)
 t.Text=txt
End Sub

 

لینک ارسال
به اشتراک گذاری در سایت های دیگر

این رو اجرا کردم ولی برنامه بسته میشه دلیل چیه؟

اینم تصویرخطا

http://www.upsara.com/images/p356978_.png

 

خط 119

Private htmls As String = js.connect("https://answercenter.ir")

لینک ارسال
به اشتراک گذاری در سایت های دیگر

به نظرم از httputils استفاده کنید. اول کدهای سایت رو دانلود کنید بعد با jsoap پارس کنید. به شکل زیر عمل کنید

Dim job As HttpJob
job.Initialize("job",Me)
job.Download("https://answercenter.ir")
Wait For jobDone(j As HttpJob)
  If j.Success Then
    Dim js As jSoup
    Private htmls As String = j.GetString
    Dim listTitle As List= js.selectorElementText(htmls,"title")
    Log(listTitle.Get(0))
  End If

 

لینک ارسال
به اشتراک گذاری در سایت های دیگر

آخرش یکی پیدا نمیشه یه سورس به ما بده این کدهایی که مینویسید شماخودتون تست کردین یا نه؟چون من هیچکدوم از از این چیزایی که گفتید انجام دادم نشد خطا میده وبرنامه فورس کلوز میده قضیه چیه.اصلا اصل قضیه من میخوام توی سرویس از گت المنت استفاده کنم با webviewextras نمیشه اگه اشتباه نکنم فقط با jsoup میشه

لینک ارسال
به اشتراک گذاری در سایت های دیگر

در ۱۴۰۱/۱/۱۸ در ۲۳:۵۹، b۴a developer گفته است:

آخرش یکی پیدا نمیشه یه سورس به ما بده این کدهایی که مینویسید شماخودتون تست کردین یا نه؟چون من هیچکدوم از از این چیزایی که گفتید انجام دادم نشد خطا میده وبرنامه فورس کلوز میده قضیه چیه.اصلا اصل قضیه من میخوام توی سرویس از گت المنت استفاده کنم با webviewextras نمیشه اگه اشتباه نکنم فقط با jsoup میشه

کد بالا تست شده و مشکلی نداره دوست عزیز. چه خطایی دریافت میکنید؟

لینک ارسال
به اشتراک گذاری در سایت های دیگر

بایگانی شده

این موضوع بایگانی و قفل شده و دیگر امکان ارسال پاسخ نیست.

  • کاربران آنلاین در این صفحه   0 کاربر

    • هیچ کاربر عضوی،در حال مشاهده این صفحه نیست.
×
×
  • اضافه کردن...