منتدى فيجوال بيسك لكل العرب | منتدى المبرمجين العرب

نسخة كاملة : اختيار روابط معينة من بين روابط
أنت حالياً تتصفح نسخة خفيفة من المنتدى . مشاهدة نسخة كاملة مع جميع الأشكال الجمالية .
الصفحات : 1 2
السلام عليكم اخوتى


هناك موقع بحمل من اليوتيوب لكن فى بعض الفيديوهات خالية من الصوت
وهناك روابط اخرى بها الصوت وانا اريد اختيار الروابط التى بها الصوت فقط
وتجاهل الباقى... فالذى يوجد به الصوت مكتوب بجواره  480P with Audio




أما الأخر مكتوب بطريقة عادية دون هذه الكلمة....

وهذا هو الكود الذى أجلب به كل الروابط


كود :
Dim input As HtmlElementCollection
       input = WebBrowser1.Document.GetElementsByTagName("a")
       For Each item As HtmlElement In input
           If item.GetAttribute("href").Contains("googlevideo") Then
               ListBox1.Items.Add(item.GetAttribute("href"))
           End If
       Next item

وهذا هو الموقع

http://www.tubeoffline.to/downloadFrom.p...ThzWbKBzS0

وجزاكم الله كل خير
للاسف اني لا اعرف التعامل مع الـhtmlweb المدمجة مع الفيجوال استوديو
اعرف لـ HtmlAgilityPack فقط.

باختصار لو تعرف كيفية الوصول لقيمة محددة بالاندكس يمكن التحقق من القيمة.


ان شاء الله تعالى احد الاخوة يلبي المطلوب واما مشاركتي هذه اعتبرها رفع للموضوع.
(19-07-18, 03:19 AM)سعود كتب : [ -> ]للاسف اني لا اعرف التعامل مع الـhtmlweb المدمجة مع الفيجوال استوديو
اعرف لـ HtmlAgilityPack فقط.

باختصار لو تعرف كيفية الوصول لقيمة محددة بالاندكس يمكن التحقق من القيمة.


ان شاء الله تعالى احد الاخوة يلبي المطلوب واما مشاركتي هذه اعتبرها رفع للموضوع.

هذا هو المطلوب فعلا اخى سعود لكن ينقصه زر التحميل من داخل البرنامج
لآنى لما بفتحها فى المتصفح الافتراضى بيظهر الرابط غير صحيح.
كما انى كنت اتمنى يكون بالويب براوزر لكن كتر الف خيرك طبعا على كل حال
بخصوص الرابط المذكور لجلب رابط تحميل

يمكنك تجربة كلاً من المواقع التالية
https://y2mate.com/youtube/sThzWbKBzS0
و
https://qdownloader.net/download?video=h...ThzWbKBzS0

فستجد فيهم سهولة اكثر فى استخراج البيانات
تحياتى لك
(19-07-18, 07:54 AM)elgokr كتب : [ -> ]
بخصوص الرابط المذكور لجلب رابط تحميل

يمكنك تجربة كلاً من المواقع التالية
و

فستجد فيهم سهولة اكثر فى استخراج البيانات
تحياتى لك

الله يكرمك اخى الجوكر
لكن الرابط المذكور هو المطلوب لانه بحمل اى فيديو من اغلبية المواقع ليس يوتيوب فقط
فلو تعرف يبقى ربنا يعزك والله
فى موقع مثل التالى
https://www.onlinevideoconverter.com/video-converter

وهو متعدد المواقع يقوم بعمل تحويل ايضاً للرابط لاى صيغة مطلوبة

تحياتى لك
(19-07-18, 10:13 PM)elgokr كتب : [ -> ]
فى موقع مثل التالى

وهو متعدد المواقع يقوم بعمل تحويل ايضاً للرابط لاى صيغة مطلوبة

تحياتى لك

هل الموقع المذكور فى الشرح صعب أم به مشاكل اخى الجوكر ؟
عموما انا متأكد لو انك تعرف التعامل معه لن تتأخر لكن يبدو فعلا انه موقع به مشاكل.
لكن لا عليك هناك اصدقاء سيقومون بحل المشكلة أو سأحاول انا معه باى طريقة أياً كانت
(19-07-18, 11:53 PM)ابو روضة كتب : [ -> ]
(19-07-18, 10:13 PM)elgokr كتب : [ -> ]
فى موقع مثل التالى

وهو متعدد المواقع يقوم بعمل تحويل ايضاً للرابط لاى صيغة مطلوبة

تحياتى لك

هل الموقع المذكور فى الشرح صعب أم به مشاكل اخى الجوكر ؟
عموما انا متأكد لو انك تعرف التعامل معه لن تتأخر لكن يبدو فعلا انه موقع به مشاكل.
لكن لا عليك هناك اصدقاء سيقومون بحل المشكلة أو سأحاول انا معه باى طريقة أياً كانت

ليس بالصعب 

لكن الامر سيحتاج الى عدة اكواد لاستخراج المطلوب
كما اننى لا اعلم هل نتائج الموقع ثابتة اذا تم وضع روابط فى كل مرة ام لا
فاذا كانت متغيرة حسب جدودة كل فيديو فى هذه الحالة ستحتاج الى تعدد الاكواد لكل احتمالية

اذا كان لدى بعض الوقت غداً ساقوم بالنظر على الموقع كاملاً
ولعل اضع الكود المناسب لذلك

تحياتى لك
(20-07-18, 02:27 AM)elgokr كتب : [ -> ]
(19-07-18, 11:53 PM)ابو روضة كتب : [ -> ]
(19-07-18, 10:13 PM)elgokr كتب : [ -> ]
فى موقع مثل التالى

وهو متعدد المواقع يقوم بعمل تحويل ايضاً للرابط لاى صيغة مطلوبة

تحياتى لك

هل الموقع المذكور فى الشرح صعب أم به مشاكل اخى الجوكر ؟
عموما انا متأكد لو انك تعرف التعامل معه لن تتأخر لكن يبدو فعلا انه موقع به مشاكل.
لكن لا عليك هناك اصدقاء سيقومون بحل المشكلة أو سأحاول انا معه باى طريقة أياً كانت

ليس بالصعب 

لكن الامر سيحتاج الى عدة اكواد لاستخراج المطلوب
كما اننى لا اعلم هل نتائج الموقع ثابتة اذا تم وضع روابط فى كل مرة ام لا
فاذا كانت متغيرة حسب جدودة كل فيديو فى هذه الحالة ستحتاج الى تعدد الاكواد لكل احتمالية

اذا كان لدى بعض الوقت غداً ساقوم بالنظر على الموقع كاملاً
ولعل اضع الكود المناسب لذلك

تحياتى لك

اعتقد ان النتائج ثابتة أستاذى وعموما وقتما يكون الوقت مناسب لك سأكون بانتظارك
(20-07-18, 03:31 AM)ابو روضة كتب : [ -> ]
اعتقد ان النتائج ثابتة أستاذى وعموما وقتما يكون الوقت مناسب لك سأكون بانتظارك


للاسف النتائج غير ثابتة فى بعض الاحيان النادرة

لكن خلينا نجرب ذلك بالشرح التالى ولعلها تصل الفكرة كاملاً لك لتتمكن من التعامل معها

فى البداية قم بانشاء TextBox واجعله Multiline

ثم قم بتطبيق التالى فى زر استخراج الروابط
كود :
       Dim input As HtmlElementCollection
       input = WebBrowser1.Document.GetElementsByTagName("td")
       For Each elem As HtmlElement In input
           Dim GetData_ As String = elem.OuterHtml.Replace("<TD>", "").Replace("</TD>", "").Replace("<A href=""", "").Replace(""" rel=""noreferrer nofollow"" download>DOWNLOAD</A>", "")
           If GetData_ IsNot Nothing Then
               TextBox1.Text += GetData_
           End If
       Next

       Dim Total_ As Integer = (TextBox1.Lines.Length - 1) / 3

       If Total_ = 12 Then
           For ii As Integer = 0 To TextBox1.Lines.Length - 1
               If ii = 15 Or ii = 30 Or ii = 33 Or ii = 36 Then
                   ListBox1.Items.Add(TextBox1.Lines(ii))
               End If
           Next
       ElseIf Total_ = 15 Then
           For ii As Integer = 0 To TextBox1.Lines.Length - 1
               If ii = 18 Or ii = 21 Or ii = 39 Or ii = 42 Or ii = 45 Then
                   ListBox1.Items.Add(TextBox1.Lines(ii))
               End If
           Next
       ElseIf Total_ = 17 Then
           For ii As Integer = 0 To TextBox1.Lines.Length - 1
               If ii = 21 Or ii = 24 Or ii = 45 Or ii = 48 Or ii = 51 Then
                   ListBox1.Items.Add(TextBox1.Lines(ii))
               End If
           Next
       End If
       Button1.Enabled = False

الان نشرح فكرة الكود
بخصوص هذا السطر
كود :
Dim Total_ As Integer = (TextBox2.Lines.Length - 1) / 3

الفكرة منه هو تحديد عدد الاسطر الخاص بالجدول فى الموقع كما فى الصورة


حيث انه سيقوم بجلب رقم 15
ثم تم استخدام كلاً من الاسطر التالى للتحقق
كود :
If Total_ = 12 Then
ElseIf Total_ = 15 Then
ElseIf Total_ = 17 Then

حيث انه ناتج لعدد الاسطر بالجدول طبقاً لكل رابط حسب الجودة التى تحتوى
الروابط التى تم استخدامها
الرابط الاول بنتائج 15 سطر اعلى جودة للفيديو 720
PHP كود :
http://www.tubeoffline.to/downloadFrom.php?host=OnLine&d=&video=https://www.youtube.com/watch?v=sThzWbKBzS0 

الرابط الثانى بنتائج 12 سطر اعلى جودة للفيديو 480
PHP كود :
http://www.tubeoffline.to/downloadFrom.php?host=OnLine&d=&video=https://www.youtube.com/watch?v=2ZuDh0vqxUE 

الرابط الثالث بنتائج 17 سطر اعلى جودة للفيديو 1080
PHP كود :
http://www.tubeoffline.to/downloadFrom.php?host=OnLine&d=&video=https://www.youtube.com/watch?v=btUPp-VJGos 

طيب يليه بعد ذلك الكود المستخدم مثل
كود :
If ii = 18 Or ii = 21 Or ii = 39 Or ii = 42 Or ii = 45 Then

والارقام هنا تعنى التالى


لو تلاحظ ان كلاً من رقم 18 و 21 و 39 و 42 و 45 
يشير الى الروابط المطلوب جلبها الخاصة بـ With Audio

طيب ايه المطلوب لتتاكد ان الكود قد يحتاج لاضافة بعد الاسطر وانه سيعمل معاك
كل ما هو عليك فعله تجربة فيديوهات عديدة على هذا الموقع بكل ما تقدر من الجدودة حتى اذا كان الفيديو 144
مع مراجعة الروابط بجدودة 480 و 720 و 1080 هل النتائج لعدد الاسطر كما تم عمله فى الكود ام تختلف من فيديو لاخر

اتمنى اكون وصلت لك الفكرة وكيفية التعامل مع الموقع المطلوب

ملحوظة Sad :  (قد لا يعمل الكود بصورة ايجابية فى حالة ظهور اسطر مخفية فى نتائج الجدول وستجد نتائج الجدول تحتوى مثل)
كود :
240p
MP4
https://i.ytimg.com/vi/eeqUNYGLn7Q/maxresdefault.jpg

عند اختبار الكود ستجد انه نادر ظهور هذا الا عند ظهورها ستجد ان الزر لا يعمل
وستطر الى اغلاق البرنامج واعادة تشغيله لعرض نتائج مختلفة
والسبب يرجع الى لو الموقع يعرض 15 سطر وقام الموقع بوضع سطر او اكثر مخفي
فيصبح النتائج مثل 16 و 17 و 18 سطر
حيث انك قمت بوضح شطر التحقق اذا كان عدد الاسطر 15 يعرض الروابط كذا
فهنا تجد انه سيعرض نتائج اسطر 17 خاصة جودة 1080 او انه لا يعرض شئ لو كان الاسطر 16 او 18 وما غير ذلك

تحياتى لك
وتمنياتى لك التوفيق
الصفحات : 1 2