نحتاج أحياناً أن نعرض آخر الأخبار في موقعنا، وذلك بجلب تلك الأخبار من أحد المواقع المتخصصة بشكل أوتوماتيكي يضمن تحديثها على مدار الساعة، ونفس الشيء ينطبق على معلومات الطقس أو البورصة...
لجلب محتويات صفحة ما من الإنترنت يمكن استخدام الكود التالي في ASP NET 2003:
Dim http_request As HttpWebRequest
Dim http_response As HttpWebResponse
Dim web_request As WebRequest
Dim the_content As String
Dim the_encoding As Encoding
http_request = web_request.Create("http://news.bbc.co.uk/low/arabic/middle_east_news/default.stm")
http_request.Timeout = 10000
http_request.UserAgent = "any_thing"
http_response = http_request.GetResponse
the_encoding = Encoding.GetEncoding(1256)
Dim stream_reader As New System.IO.StreamReader(http_response.GetResponseStream, the_encoding)
the_content = stream_reader.ReadToEnd
http_response.Close()
stream_reader.Close()الكود السابق يقوم بجلب محتويات الصفحة:
http://news.bbc.co.uk/low/arabic/middle_ea...ews/default.stm
من موقع بي بي سي العربي، وهي الصفحة التي تحتوي أخبار الشرق الأوسط.
يجب استيراد فضاءات الأسماء التالية:
Imports System.Net Imports System.Text
يستخدم الكود السابق الفئتين (class):
HttpWebRequest
HttpWebResponse
وذلك لطلب الصفحة وإرجاع محتوياتها، ثم يستخدم كائن من نوع StreamReader لقراءة المحتويات وتخزينها في متغير نصي the_content
بعد هذه الخطوة، فإن المتغير the_content سيحتوي على كود html الكامل للصفحة المطلوبة، وعندها يمكن القيام باستخلاص المعلومات المطلوبة فقط من الصفحة وذلك باستخدام التوابع المعروفة لمعالجة المتغيرات النصية، مثل instr و mid و left وغيرها...
أرفقت لكم الكود الكامل، ولمن يرغب برؤية المثال يعمل، يمكنه زيارة هذه الصفحة: