تقييم الموضوع :
  • 0 أصوات - بمعدل 0
  • 1
  • 2
  • 3
  • 4
  • 5
[VB.NET] يرجى التعديل على الكود
#1
السلام عليكم ورحمة الل 

يسعد الله اوقاتكم


الكود محتاج مساعده وتعديل عليه جزاكم اله خيرا

عمل الكود هو

اول شي يقراء لي صفحة في النت html

ومن ثم اقوم بالبحث عن  رابط في الصفحة

واذا موجود اللي ابحث عنه يقوم بانزال الملف في جهازي

عملية قراءة الموقع صحيحه وشغاله

وعملية البحث شغاله

باقي طيقة تنزيل الملف



هنا اقوم بقراءة الصفحة
كود :
  Dim EQSLURL As String = "http://www.google.ae/"
       'Panels1.Text = "Sending information request to eQSL Server"
       Dim client As WebClient = New WebClient()
       Application.DoEvents()
       Dim data As System.IO.Stream = client.OpenRead(EQSLURL)
       Application.DoEvents()
       Dim reader As System.IO.StreamReader = New System.IO.StreamReader(data)
       Dim ReturnStr As String = ""
       ReturnStr = reader.ReadToEnd


من ثم اقوم بالبحث
كود :
       If (Regex.IsMatch(ReturnStr, "downloadedfiles/.+?\.adi", RegexOptions.IgnoreCase)) Then
           MessageBox.Show("found")
       Else
           MessageBox.Show("not found")
       End If

اذا حصل downloadedfiles/.+?\.adi

يقوم بانزل الملف في جهازي
www.google.cc/qslcard/downloadedfiles/.+?\.adi


كود :
     Using client = New WebClient()
               client.DownloadFile("www.google.cc/qslcard/downloadedfiles/.+?\.adi", My.Application.Info.DirectoryPath")
           End Using


يرجى المساعدة في تنزيل الملف
وشكرا
الرد
تم الشكر بواسطة:
#2
السلام عليكم

تفضل تعديل الكود
كود :
Dim EQSLURL As String = "http://www.google.ae/"
Using client As New WebClient() With {.Encoding = System.Text.Encoding.UTF8}
Dim ReturnStr As String = client.DownloadString(EQSLURL)
Dim filename As String = Regex.Match(ReturnStr, "downloadedfiles/.+?\.adi", RegexOptions.IgnoreCase).Value
   If filename <> "" Then
       Dim data() As Byte = client.DownloadData(EQSLURL & "/qslcard/" & filename)
       IO.File.WriteAllBytes(IO.Path.GetFileName(filename), data)
       MessageBox.Show("found: " & filename)
   Else
       MessageBox.Show("not found")
   End If
End Using

في أكوادك وجدت اختلافا في اسم الموقع حيث الأول google.ae والآخر google.cc
الرد
تم الشكر بواسطة: dubai.eig , dubai.eig
#3
(18-01-17, 02:08 PM)مساعدة كتب : السلام عليكم

تفضل تعديل الكود
كود :
Dim EQSLURL As String = "http://www.google.ae/"
Using client As New WebClient() With {.Encoding = System.Text.Encoding.UTF8}
Dim ReturnStr As String = client.DownloadString(EQSLURL)
Dim filename As String = Regex.Match(ReturnStr, "downloadedfiles/.+?\.adi", RegexOptions.IgnoreCase).Value
   If filename <> "" Then
       Dim data() As Byte = client.DownloadData(EQSLURL & "/qslcard/" & filename)
       IO.File.WriteAllBytes(IO.Path.GetFileName(filename), data)
       MessageBox.Show("found: " & filename)
   Else
       MessageBox.Show("not found")
   End If
End Using

في أكوادك وجدت اختلافا في اسم الموقع حيث الأول google.ae والآخر google.cc

ما شاءالله عليك

بارك الله فيك تم تجربة الكود ويعمل بشكل ممتاز 

في ميزان اعمالك والف شككرا

(18-01-17, 02:08 PM)مساعدة كتب : السلام عليكم

تفضل تعديل الكود
كود :
Dim EQSLURL As String = "http://www.google.ae/"
Using client As New WebClient() With {.Encoding = System.Text.Encoding.UTF8}
Dim ReturnStr As String = client.DownloadString(EQSLURL)
Dim filename As String = Regex.Match(ReturnStr, "downloadedfiles/.+?\.adi", RegexOptions.IgnoreCase).Value
   If filename <> "" Then
       Dim data() As Byte = client.DownloadData(EQSLURL & "/qslcard/" & filename)
       IO.File.WriteAllBytes(IO.Path.GetFileName(filename), data)
       MessageBox.Show("found: " & filename)
   Else
       MessageBox.Show("not found")
   End If
End Using

في أكوادك وجدت اختلافا في اسم الموقع حيث الأول google.ae والآخر google.cc



بس خطوة اخيره بارك الله فيك

انا حاولت اغير مكان تنزيل الملف بس طلع لي غلط

مثلا اريد تخزين الملف في فولدر

كود :
My.Application.Info.DirectoryPath & "\myfile\


وين اغير بلضبط

وشكرا من جديد
الرد
تم الشكر بواسطة:
#4
التغيير يكون على هذا السطر
[align=left]
كود :
IO.File.WriteAllBytes(IO.Path.GetFileName(filename), data)
[/align]

ليصبح هكذا
[align=left]
كود :
Dim targetFilename as string
targetFilename = My.Application.Info.DirectoryPath & "\myfile\" & IO.Path.GetFileName(filename)
IO.File.WriteAllBytes(targetFilename , data)
[/align]
الرد
تم الشكر بواسطة: dubai.eig
#5
(18-01-17, 04:14 PM)مساعدة كتب : التغيير يكون على هذا السطر
كود :
IO.File.WriteAllBytes(IO.Path.GetFileName(filename), data)

ليصبح هكذا
كود :
Dim targetFilename as string
targetFilename = My.Application.Info.DirectoryPath & "\myfile\" & IO.Path.GetFileName(filename)
IO.File.WriteAllBytes(targetFilename , data)



احسنت بارك الله فيك
الرد
تم الشكر بواسطة:


المواضيع المحتمل أن تكون متشابهة .
الموضوع : الكاتب الردود : المشاهدات : آخر رد
  التاريخ لا يقبل الاضافة او التعديل talatm 2 95 18-09-20, 08:36 PM
آخر رد: talatm
  المساعدة في التعديل على كود تعديل البيانات في قاعدة سيكوال سيرفر momani33 3 67 15-09-20, 08:10 PM
آخر رد: Anas Mahmoud
  التعديل على الكود للتخلص من مشكلة البطىء حيث عدد السجلات كبير momani33 0 86 09-09-20, 01:33 PM
آخر رد: momani33
  ماهو الخطاء في هذا الكود عمور2016 1 90 06-09-20, 06:33 PM
آخر رد: حريف برمجة
  [سؤال] طرب الويندوز ومحتاج اجداد الكود سحاب روابط قائيمة تشغيل من اليتيوب Ali Edal 11 910 05-09-20, 03:36 PM
آخر رد: معاند الحظ
  [سؤال] خطأ في التنفيذ الكود بعد فلترة dataGridView محمد العامر 2 211 20-08-20, 01:38 PM
آخر رد: محمد العامر
  [مشروع] هلا ساعدتموني في اكتشاف الخطأ في الكود gharib 6 289 18-08-20, 03:45 PM
آخر رد: gharib
  التعديل على عمود في الداتاقريد فيو دفعة واحد بناء على قيمة معينة جيولوجي مبتدئ 3 246 02-08-20, 02:10 AM
آخر رد: ابراهيم ايبو
  التعديل على عمود في الداتاقريد فيو دفعة واحد بناء على قيمة معينة جيولوجي مبتدئ 0 139 01-08-20, 07:49 PM
آخر رد: جيولوجي مبتدئ
  [كود] اريد التعديل على الكود وهو عدم التكرار عمور2016 3 251 23-07-20, 01:03 AM
آخر رد: عبد العزيز البسكري

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


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