تقييم الموضوع :
  • 0 أصوات - بمعدل 0
  • 1
  • 2
  • 3
  • 4
  • 5
[سؤال] كيف نستخلص الرابط من <a class="any" href="link"
#11
حتى اسهل المسالة حاولوا استخلاص الروابط من هذه الصفحة http://vb4arb.com/vb4/forumdisplay.php?65 اقصد روابط المواضيع بحيث استبدلها بروابط عادي لصفحات محملة.
الرد }}}
تم الشكر بواسطة:
#12
-
أنا جربت وضع On Error Resume Next بعد For Each مباشرة لتلافي الأخطاء.........جرب
تم استخدام Distinct لحذف المكرر.....
كود :
Dim htmldoc As HtmlDocument = New HtmlDocument()
htmldoc.Load("abc.html")

Dim hrefs, classs As New List(Of String)
For Each link As HtmlNode In htmldoc.DocumentNode.SelectNodes("a")
    On Error Resume Next
    hrefs.Add(link.Attributes("href").Value)
    classs.Add(link.Attributes("class").Value)
Next
MsgBox("hrefs:" & vbNewLine & Join(hrefs.Distinct.ToArray, vbNewLine))
MsgBox("classes:" & vbNewLine & Join(classs.Distinct.ToArray, vbNewLine))
الرد }}}
تم الشكر بواسطة:
#13
لا اخي ما ينفع استخدم الطريقة on error لاني اريد البرنامج يعمل بكل مااريد منه.
حاول تقتنص النص من المصدر التالي
كود :
view-source:http://vb4arb.com/vb4/forumdisplay.php?65
حاول تقتنص النصوص بهذا التنسيق
كود :
<a class="title" href="showthread.php?180-قوانين-كتابة-المواضيع" id="thread_title_180">قوانين كتابة المواضيع</a>

الرد }}}
تم الشكر بواسطة:
#14
اظن ساصنع قوالب من عندي....
الرد }}}
تم الشكر بواسطة:
#15
-
تم تعديل المثال السابق وذلك باستخدام If HtmlNode.Attributes("...") IsNot Nothing وهي الطريقة الصحيحة في مثل هذه الحالة....تم استخدام Distinct لحذف المكرر.....
كود :
Dim htmldoc As HtmlDocument = New HtmlDocument()
htmldoc.Load("abc.html")

Dim hrefs, classs As New List(Of String)
For Each link As HtmlNode In htmldoc.DocumentNode.SelectNodes("//a")
    If link.Attributes("href") IsNot Nothing Then hrefs.Add(link.Attributes("href").Value)
    If link.Attributes("class") IsNot Nothing Then classs.Add(link.Attributes("class").Value)
Next
MsgBox("hrefs:" & vbNewLine & Join(hrefs.Distinct.ToArray, vbNewLine))
MsgBox("classes:" & vbNewLine & Join(classs.Distinct.ToArray, vbNewLine))
الرد }}}
تم الشكر بواسطة:
#16
بصراحة Regulatexpression فيها مرونة ولكن تحتاج خبرة بكل معايير البحث تم ايجاد المطلوب عبرها.
اما htmlagilitypack فهي رائعة ايضا وكالسابقة تماما لكنها تكون مفيدة اكثر مع الوسوم التي تحتوي id او النودز التي تحتوي فقط على واحد Attributes
كل هذا فقط من تجربتي وليس حصر او تقييم لها وانما لما قدرت عليه.
ولله الحمد تمكنت من تجهيز مشروع خاص لمنتديات vbuletin 4 بقيت التشطيبات الاخيرة.
وفقكم الله لكل مافيه رضاه.
الرد }}}
تم الشكر بواسطة:



التنقل السريع :


يقوم بقرائة الموضوع: بالاضافة الى ( 1 ) ضيف كريم