اذهب الي المحتوي
أوفيسنا

الردود الموصى بها

قام بنشر

أحاول أن أتعلم نقل بيانات من صفحة انترنت الى نموذج و لكن افشل 

فى كيف انقل اسم حقل صفحة الانترنت بشكل صحيح 

كما موضح بالنموذج المرفق

و كود النقل كذالك

وجزاكم الله كل خير

تعليمى.rar

قام بنشر

اقرأ هذه الدروس لعلك تستفيد منها

في 3‏/1‏/2020 at 19:50, صالح حمادي said:

بسم الله الرحمان الرحيم و الصلاة و السلام على أشرف المرسلين أما بعد:

سوف نقوم اليوم إن شاء الله بشرح أداة  WebBrowser وأهم ما يتعلق بها من أوامر و أحداث و خصائص و إدخال و إخراج. و سوف يتم تقسيم هذا العمل إلى مجموعة حلقات نبدأ من الصفر حتى آخر نقطة نستطيع الوصول إليها إن شاء الله مع وضع مثال تطبيقي لكل حلقة.

مقدمة:
WebBrowser  هي أداة تعمل عمل أي متصفح و هي مقترنة المتصفح الشهير Internet Explorer  فهي تساعدك في تصفح المواقع من ناحية و التحكم في أكواد HTML وكل ما يرتبط بها من إدخال و استخراج بيانات من ناحية أخرى.

ملاحظة: لتشغيل هذه الأداة بشكل جيد يجب تحديث المتصفح الشهير Internet Explorer  إلى الإصدار 10 أو 11. مع العلم أن ونداوز 10 به الإصدار 11

الحلقة الأولى: أكواد التصفح

سوف نتطرق في هذه الحلقة إلى الأكواد التي تمكننا من التصفح و التنقل داخل الأداة.

1- كود فتح صفحة موقع: WebBrowser3 هو اسم الأداة داخل النموذج

Me.WebBrowser3.Navigate ("رابط الصفحة كامل")

2- كود فتح صفحة فارغة:

Me.WebBrowser3.Navigate ("about:blank")

3- كود الرجوع للصفحة السابقة:

Me.WebBrowser3.GoBack

4- كود الإنتقال للصفحة التالية:

Me.WebBrowser3.GoForward

5- كود إعادة تحميل الصفحة:

Me.WebBrowser3.Refresh

6- كود إيقاف تحميل الصفحة:

Me.WebBrowser3.Stop

7- كود إستخراج رابط الصفحة الحالية:

MsgBox Me.WebBrowser3.Document.url

و هذا مثال لما تم ذكره في هذه الحلقة

webbroser.rar 21.94 kB · 204 downloads

 

  • Like 2
  • Thanks 1
قام بنشر

بوركت استاذ على اضافة المعلومة لكن صراحة هذا المثال قراته حوالي الالف مرة لكن صراحة لم افهم والوووووووا 

فيه عمل كبير لكن معقد بعض الشيء و المبتدئ لا يجد مقعدا فيه فيا ريت مزيد من التوضيح في امثلة بسيطة موجهة للعموم و خاصة بيننا من تكوينهم عصامي في البرمجة 

مع العلم  واجهت نفس المشكل و الى حد الساعة ابحث عن حل و لم اجده 

  • Thanks 2
  • أفضل إجابة
قام بنشر

أهلا @محمد احمد لطفى

في 21‏/7‏/2022 at 16:38, محمد احمد لطفى said:

أحاول أن أتعلم نقل بيانات من صفحة انترنت الى نموذج و لكن افشل

لا يخفى أن مستندات هتشمل HTML مبنية على وسوم مترابطة هرمياً، وأن لهذه الوسوم رتب في هذا الهرم، وهي الآباء والأبناء والإخوة، وهذه الرتب قد تتداخل في بعضها البعض..

والمقصود من هذه التقدمة هو تسهيل الوصول إلى البييانات المضمنة داخل هذه الوسوم بطريق سهلة ومبسطة..

يمكن الوصول إلى البيانات بأحد الخصائص التالية

Dim Tag,Class,Name,Id
With WebBrowser1.Document
	' أكثر هذه الخصائص تحديد
	Id=.getElementById("...")
	'  أقلها اتساعا وأقربها تحديدا
    For Each Name in .getElementsByName("...")
		Name
	Next
	' تتوسع أفقيا أي في رتبة الأخوة
    For Each Class in .getElementsByClassName("...")
		Class
	Next
	' أكثرها إنتشار
    For Each Tag in .getElementsByTagName("...")
		Tag
	Next
end with

أغلب هذه الخصائص تعيد مصفوفة غرضية ماعدا الأولى منها... 

نأتي على تطبق هذا على قاعدة البيانات 

Private Sub أمر11_Click()
   Dim el As IHTMLElement
   Dim t
   For Each el In WD.getElementsByClassName("spaceit_pad")
       t = Split(el.innerText, ":")
       Select Case t(0)
       Case "score"
         Me.Score = t(1)
       Case "rating"
         Me.Rating = t(1)
       Case "genres"
         Me.Genres = t(1)
       Case "theme"
         Me.Theme = t(1)
       End Select

      Next
End Sub

 

 أرجو أن يكون بإمكانكم اكتشاف طريقة معالجة البيانات..

 

 

  • Like 2
  • Thanks 1
قام بنشر
38 دقائق مضت, محمد احمد لطفى said:

حيث جائتنى هذه الرسالة

لمعالجة هذه السبب أنت بين خيارين.

الأول. أن تلغي الإشارة إلى الغرض IHTMLElement

الثاني أن تضيف إلى قائمة المراجع المكتبة التي ينتمي إليها الغرض كما في الصورة

ملاحظة: المكتبة باللون الأصفر يأشر عليها تلقائيا عند إضافة عنصر التحكم WebBrowser، لكنها تلغى عند حدوث القص واللصق.. ولذا يبغي أن تتأكد من أنه مؤشر عليها..

هتان المكتبتان من المكتبات الأساسية في ويندوز ويندر جدا أن لا تكون متوفرة، وبناءً عليه يجب عدم القلق بشأن توفرها عند نقل التطبيق إلى جهاز العميل..

392311399_Screenshot2022-07-29210431.jpg.aae8fce45e92564a0b8a6e15b7029f3f.jpg

تعليمى.mdb

  • Like 1
  • Thanks 1
قام بنشر (معدل)

أستاذى @أبو إبراهيم الغامدي
جزاك الله كل خير
حاجة صغيره فقط 
عند نقل   Score  تم نقل ( 8.241 (scored by 14490791,449,079 users) 1 indicates a weighted score. ) هل يمكن نقل الرقم 8.241 فقط

 

تم تعديل بواسطه محمد احمد لطفى
قام بنشر
7 ساعات مضت, محمد احمد لطفى said:

عند نقل   Score  تم نقل ( 8.241 (scored by 14490791,449,079 users) 1 indicates a weighted score. ) هل يمكن نقل الرقم 8.241 فقط

لو فتحت الموقع في أحد المتصفحات لديك  وقمت بالنقر بالزر اليمين للفارة على العدد 8.24 وأخترت فحص  Inspect من القائمة سوف تظهر لك وسوم هتشمل التي تتحتوي عليها الصفحة مع التأشير على الوسم الذي يحتوي على عدد النقاط. كما في الصورة

1820831809_Screenshot2022-07-29232228.jpg.70d06012cd9565800d4bebedebb471e5.jpg

 

الوسم الذي يحتوي على النقاط هو الوسم الثاني ضمن أبناء الوسم الأب المعرف ضمن spaceit_pad، وبما أن الأبناء هي عبارة عن مصفوفة، وترتيب المصفوفة يبدأ بالرقم صفر فسوف يكون رقم الوسم الذي يحتوي على النقاط هو  (1) وبناء عليه سيكون تعديل الشفرة على النحو التالي

Case "score"
	Me.Score = t(1) '' السابقة
'----------------------------------------------------       
Case "score"
	Me.Score = el.Children(1).innerText	'' التعديل

  

  • Thanks 1
زائر
هذا الموضوع مغلق.
  • تصفح هذا الموضوع مؤخراً   0 اعضاء متواجدين الان

    • لايوجد اعضاء مسجلون يتصفحون هذه الصفحه
×
×
  • اضف...

Important Information