یک برنامهٔ کنسول C# بنویسید که یک آدرس وب را با Console.ReadLine دریافت کند، محتوای HTML آن را دانلود کند و تعداد تگ‌های <a> (لینک‌ها) را در خروجی چاپ کند.

4.0 بازدید آخرین ویرایش در 220 روز قبل ساعت 01:52

0.0

برای حل این مسئله می‌توانید از HttpClient (یا به‌سادگی WebClient) برای دانلود متن صفحه استفاده کنید؛ مثلاً با GetStringAsync آدرس را بگیرید و سپس با یک جستجوی ساده رشته‌ای یا یک عبارت منظم (مثلاً بررسی الگوی "

توسط پژوهشگر در 220 روز قبل ساعت 01:52
دسته بندی ها: C# C# for beginner
arash در 220 روز قبل ساعت 11:41

برای این کار با HttpClient، HTML صفحه را از طریق GetStringAsync دانلود کنید و نتیجه را به‌دست آورید. برای شمارش تگ‌های <a> به‌طور مطمئن، استفاده از کتابخانهٔ تحلیل HTML مثل HtmlAgilityPack پیشنهاد می‌شود تا همهٔ لینک‌ها را درست شمارش کند و از خطاهای احتمالی در استفاده از regex جلوگیری شود. همچنین بهتر است اجرای برنامه را به‌صورت asynchronous انجام دهید و استثناهای شبکه را مدیریت کنید. اگر نمی‌خواهید کتابخانهٔ اضافی اضافه کنید، می‌توانید از یک regex ساده مانند <a[^>]*> استفاده کنید ولی با HTML‌های نامنظم خطرِ شمارش ناقص وجود دارد.

گزارش

1 پاسخ

جدید ترین قدیمی ترین بالاترین امتیاز پاسخ های من

در حال بارگیری...
ورود به حساب کاربری