Html Agility Pack ৰ সৈতে বিশ্লেষণৰ আগতে প্ৰক্সিৰ জৰিয়তে HTML আনক
প্ৰক্সীৰ জৰিয়তে সংৰূপিত HttpClient আৰু Html Agility Pack একত্ৰিত কৰক, নেটৱৰ্ক ত্ৰুটি আৰু HTML বিশ্লেষণ পৃথক ৰাখি।
using var handler = new HttpClientHandler
{
UseProxy = true,
Proxy = new WebProxy("http://proxy.example:8080")
};
using var client = new HttpClient(handler);
string html = await client.GetStringAsync(
"https://www.example.com/catalog");
var document = new HtmlAgilityPack.HtmlDocument();
document.LoadHtml(html);এই আধুনিক .NET অংশই System.Net আৰু System.Net.Http ব্যৱহাৰ কৰে। সংৰূপিত ক্লায়েণ্টে নেটৱৰ্ক ৰাউটিং পৰিচালনা কৰে, আৰু Html Agility Pack-এ ঘূৰাই দিয়া HTML ষ্ট্ৰিং লাভ কৰে। প্ৰতিটো পৃষ্ঠাৰ বাবে ইয়াৰ পুল পুনৰ নিৰ্মাণ নকৰি চলি থকা কামৰ বাবে উপযুক্তভাৱে সংৰূপিত ক্লায়েণ্ট এটা ৰাখক।
এই ৰাজহুৱা পৃষ্ঠাৰ উদাহৰণত, HTTP প্ৰক্সী তালিকাৰ পৰা এটা অনুমোদনহীন প্ৰাৰ্থীয়ে মধ্যস্থকাৰীটো সলনি কৰিব পাৰে। গন্তব্যটো পৃথকভাৱে সলনি কৰক। ৱেবছাইট URL-এ ইয়াৰ TLS পৰিচয় ৰাখে। প্ৰমাণিত প্ৰক্সী পত্ৰত্ৰ WebProxy-ত থাকে; ৱেবছাইট পত্ৰত্ৰই বা অক্ষম কৰা সত্যাপনে সেইবোৰৰ ঠাই ল'ব নোৱাৰে।
GetStringAsync-এ অসফল HTTP স্থিতি ত্ৰুটি হিচাপে গণ্য কৰে। ব্যৰ্থ ডাউনলোড এটা খালী HtmlDocument-লৈ ৰূপান্তৰিত নকৰিব। যদি এপ্লিকেশ্বনটোৱে হেডাৰ, স্থিতিৰ বিৱৰণ বা ত্ৰুটিৰ বডি বিচাৰে, তেন্তে সঁহাৰি-অভিমুখী HTTP কাৰ্য্য ব্যৱহাৰ কৰি বিশ্লেষণৰ আগতে পৰীক্ষা কৰক।
ষ্ট্ৰিং পদ্ধতিটোৱে কেঁচা বাইটৰ অশৰ্তীয় অতিৰিক্ত UTF-8 ৰূপান্তৰ এৰাই যায়। যদি ইচ্ছাকৃতভাৱে বাইট আনা হয়, তেন্তে সঁহাৰি আৰু নথিৰ এনক'ডিং প্ৰয়োজনীয়তা ডিক'ডিঙলৈ লৈ যাওক।
LoadHtml-এ এটা বিশ্লেষিত নথি উৎপন্ন কৰে; ই স্ক্ৰিপ্ট চলায় নাই, ষ্টাইল লোড নকৰে বা সংযোগ অনুসৰণ নকৰে। পৰৱৰ্তী আপেক্ষিক সংযোগসমূহ সঁহাৰিৰ অৱস্থানৰ সৈতে সমাধান কৰক, আৰু মনত ৰাখক যে ব্ৰাউজাৰে ৰেণ্ডাৰ কৰা উপাদান ডাউনলোড কৰা উৎসত নাথাকিব পাৰে। অনুৰোধসমূহে একে সংৰূপিত HTTP ক্লায়েণ্ট ভাগ কৰিলেও প্ৰতিটো সঁহাৰিয়ে নিজৰ নথি উৎপন্ন কৰা উচিত।