PDA

View Full Version : سوال: چگونه می توانم متن قسمت اصلی سایت را بدست بیاورم ؟



aradrobo
چهارشنبه 04 اردیبهشت 1392, 19:06 عصر
به عنوان مثال وارد سایت تابناک (http://www.tabnak.ir/fa/news/283644/%D8%A7%DB%8C%D8%B1%D8%A7%D9%86-%DA%A9%D9%88%DB%8C%D8%AA-%D8%B1%D8%A7-%D8%B4%D8%B4-%D8%AA%D8%A7%DB%8C%DB%8C-%DA%A9%D8%B1%D8%AF)شوید.

صفحه ای که باز می شود دارای تبلیغات و ... می باشد . من می خواهم فقط قسمت اصلی که دارای متن می باشد برایم کپی برداری شود . یعنی با زدن دمه باتن ، کل متن درون richtextxbox کپی شود .

ممنون می شوم اگه در این زمینه اطلاعاتی دارید به من کمک کنید . با تشکر

سعید کشاورز
چهارشنبه 04 اردیبهشت 1392, 19:13 عصر
این کمکت میکنه

aradrobo
پنج شنبه 05 اردیبهشت 1392, 04:54 صبح
این کمکت میکنه

این فایل را قبلاً دریافت کرده بودم . ولی متاسفانه هیچکدوم از اخبار وبلاگهای میهن بلاگ را نمی تواند بخواند.

tooraj_azizi_1035
پنج شنبه 05 اردیبهشت 1392, 19:46 عصر
سلام
باید HTMLAgilityPack رو دانلود کنید:http://htmlagilitypack.codeplex.com/documentation


WebClient client = new WebClient();
string html = client.DownloadString("http://www.tabnak.ir/fa/news/283644/%D8%A7%DB%8C%D8%B1%D8%A7%D9%86-%DA%A9%D9%88%DB%8C%D8%AA-%D8%B1%D8%A7-%D8%B4%D8%B4-%D8%AA%D8%A7%DB%8C%DB%8C-%DA%A9%D8%B1%D8%AF");
HtmlDocument doc = new HtmlDocument();
doc.LoadHtml(html);

foreach(HtmlNode node in doc.DocumentNode.SelectNodes("//text()"))
{
Console.WriteLine("text=" + node.InnerText);
}

aradrobo
شنبه 07 اردیبهشت 1392, 17:02 عصر
سلام
باید HTMLAgilityPack رو دانلود کنید:http://htmlagilitypack.codeplex.com/documentation


WebClient client = new WebClient();
string html = client.DownloadString("http://www.tabnak.ir/fa/news/283644/%D8%A7%DB%8C%D8%B1%D8%A7%D9%86-%DA%A9%D9%88%DB%8C%D8%AA-%D8%B1%D8%A7-%D8%B4%D8%B4-%D8%AA%D8%A7%DB%8C%DB%8C-%DA%A9%D8%B1%D8%AF");
HtmlDocument doc = new HtmlDocument();
doc.LoadHtml(html);

foreach(HtmlNode node in doc.DocumentNode.SelectNodes("//text()"))
{
Console.WriteLine("text=" + node.InnerText);
}


اصلاً متوجه منظور شما نشدم . لطفاً واضح تر توضیح دهید . با تشکر

در ضمن تحت اپلیکیشن بنویسید و نه تحت کنسول . باز هم متشکرم.

aradrobo
شنبه 07 اردیبهشت 1392, 17:02 عصر
سلام
باید HTMLAgilityPack رو دانلود کنید:http://htmlagilitypack.codeplex.com/documentation


WebClient client = new WebClient();
string html = client.DownloadString("http://www.tabnak.ir/fa/news/283644/%D8%A7%DB%8C%D8%B1%D8%A7%D9%86-%DA%A9%D9%88%DB%8C%D8%AA-%D8%B1%D8%A7-%D8%B4%D8%B4-%D8%AA%D8%A7%DB%8C%DB%8C-%DA%A9%D8%B1%D8%AF");
HtmlDocument doc = new HtmlDocument();
doc.LoadHtml(html);

foreach(HtmlNode node in doc.DocumentNode.SelectNodes("//text()"))
{
Console.WriteLine("text=" + node.InnerText);
}


اصلاً متوجه منظور شما نشدم . لطفاً واضح تر توضیح دهید . با تشکر

در ضمن تحت اپلیکیشن بنویسید و نه تحت کنسول . باز هم متشکرم.

tooraj_azizi_1035
شنبه 07 اردیبهشت 1392, 17:52 عصر
از لینکی که گذاشتم HTMLAgilityPack رو دانلود کنید و بعد به Reference های برنامه اضافه کنید.
این کد رو تست کنید:


WebClient client = new WebClient();
string html = client.DownloadString("http://www.barnamenevis.org");
HtmlAgilityPack.HtmlDocument doc = new HtmlAgilityPack.HtmlDocument();
doc.LoadHtml(html);

foreach (HtmlNode node in doc.DocumentNode.SelectNodes("//text()").Where(node => !string.IsNullOrEmpty(node.InnerText)))
{
richTextBox1.AppendText(node.InnerText);
}

aradrobo
دوشنبه 09 اردیبهشت 1392, 15:23 عصر
از لینکی که گذاشتم HTMLAgilityPack رو دانلود کنید و بعد به Reference های برنامه اضافه کنید.
این کد رو تست کنید:


WebClient client = new WebClient();
string html = client.DownloadString("http://www.barnamenevis.org");
HtmlAgilityPack.HtmlDocument doc = new HtmlAgilityPack.HtmlDocument();
doc.LoadHtml(html);

foreach (HtmlNode node in doc.DocumentNode.SelectNodes("//text()").Where(node => !string.IsNullOrEmpty(node.InnerText)))
{
richTextBox1.AppendText(node.InnerText);
}


این کد رو هم زدم . یک سری چیزهای خرچنگ قورباغه پیدا کرد .

aradrobo
دوشنبه 09 اردیبهشت 1392, 15:29 عصر
از لینکی که گذاشتم HTMLAgilityPack رو دانلود کنید و بعد به Reference های برنامه اضافه کنید.
این کد رو تست کنید:


WebClient client = new WebClient();
string html = client.DownloadString("http://www.barnamenevis.org");
HtmlAgilityPack.HtmlDocument doc = new HtmlAgilityPack.HtmlDocument();
doc.LoadHtml(html);

foreach (HtmlNode node in doc.DocumentNode.SelectNodes("//text()").Where(node => !string.IsNullOrEmpty(node.InnerText)))
{
richTextBox1.AppendText(node.InnerText);
}


مشکل خرچنگ قورباغه نوشتنشو حل کردم . در واقع این دستورات سورس کد را برایم جمع آوری می کند . و قسمت متن اصلی را برایم پیدا نمی کند .

saeidpsl
دوشنبه 09 اردیبهشت 1392, 16:21 عصر
اینجوری ؟ :متفکر:

aradrobo
دوشنبه 09 اردیبهشت 1392, 20:59 عصر
اینجوری ؟ :متفکر:

مرسی ، فقط ای کاش با سی شارپ می نوشتی برام . در ضمن وقتی بهش این آدرسو می دهم چیزی نمیاره : http://spamsaz.mihanblog.com/post/15

لطفاً توضیحی از نحوه عملکرد برنامه بدهید . با تشکر .

saeidpsl
دوشنبه 09 اردیبهشت 1392, 22:09 عصر
با سی شارپ هم به زودی .
خوب این فقط برای سایت http://www.tabnak.ir/ نوشته شده میشه برای همه سایت ها هم ساخت ولی سخته

aradrobo
سه شنبه 10 اردیبهشت 1392, 17:31 عصر
با سی شارپ هم به زودی .
خوب این فقط برای سایت http://www.tabnak.ir/ نوشته شده میشه برای همه سایت ها هم ساخت ولی سخته

ممنون می شوم نسخه سی شارپ را برایم ارسال کنید.

saeidpsl
یک شنبه 15 اردیبهشت 1392, 02:07 صبح
بفرما اینم با #C

aradrobo
جمعه 20 اردیبهشت 1392, 07:55 صبح
بفرما اینم با #C


خیلی متشکرم . فقط ای کاش توضیحاتی هم به فارسی در درون همون کدها خط به خط می دادین ؟ و اینکه چگوه برای سایت های دیگر هم میشه نوشت که مزاحم شما نشوم . با تشکر