PDA

View Full Version : سوال: نحوه بدست آوردن Title سایت



LostOfMind
دوشنبه 19 مرداد 1394, 10:22 صبح
سلام
من با استفاده از کد زیر


Request.UrlReferrer.AbsoluteUri



آدرس لینک های ورودی به سایت رو دریافت کردم چطور میشه عنوان سایتی که وارد سایتم شده رو بدست بیارم؟
تشکر

بیتا حکمت
دوشنبه 19 مرداد 1394, 10:27 صبح
سلام ، شما بر اساس ادرسی که بدست اوردین سورس html اون ادرس رو میخونین ، بعد از داخل سورس html دنبال تگ <title> می گردین . چون عنوان سایتا داخل این تگ نوشته میشه

sun2rise
دوشنبه 19 مرداد 1394, 11:22 صبح
برای گرفتن تایتل از کد زیر استفاده کنید

Header.Title

LostOfMind
دوشنبه 19 مرداد 1394, 11:42 صبح
مشکلم با کمک دوستان عزیر سایت برنامه نویسان (http://مطلب.را.کامل.قرار.دهید/Articles/Article1933.html) حل شد
کد رو اینجا میذارم امیدوارم مشکل بقیه ی دوستان رو حل کنه

ابتدا dll های ضمیمه شده را دانلود کنید

سپس در صفحه aspx کد های زیر را بنویسید:



<table>
<tr>
<td>آدرس سایت :</td>
<td>
<asp:TextBox ID="txtURL" runat="server" Width="250px"></asp:TextBox>
<asp:Button ID="Button1" runat="server" OnClick="Button1_Click" Text="بخوان" />
</td>
</tr>
<tr>
<td>
<b>عنوان:</b>
</td>
<td>
<asp:TextBox ID="txtTiltle" runat="server" Width="250px"></asp:TextBox>
</td>
</tr>
<tr>
<td valign="top">
<b>توضیحات:</b>
</td>
<td>
<asp:TextBox ID="txtDesc" runat="server" Rows="7" Columns="40" TextMode="MultiLine"></asp:TextBox>
</td>
</tr>
</table>


در رویداد کلیک دکمه بخوان کد زیر را می نویسیم:

String url = txtURL.Text;
//Get Title
WebClient x = new WebClient();
x.Encoding = Encoding.UTF8;
string source = x.DownloadString(url);
txtTiltle.Text = Regex.Match(source, @"\<title\b[^>]*\>\s*(?<Title>[\s\S]*?)\</title\>", RegexOptions.IgnoreCase).Groups["Title"].Value;
//Method to get Meta Tags
GetMetaTagValues(url);


سپس تابع GetMetaTagValues را می نویسیم:

private void GetMetaTagValues(string url)
{
//Get Meta Tags
var webGet = new HtmlWeb();
var document = webGet.Load(url);

var metaTags = document.DocumentNode.SelectNodes("//meta");

if (metaTags != null)
{
foreach (var tag in metaTags)
{
if (tag.Attributes["name"] != null && tag.Attributes["content"] != null && tag.Attributes["name"].Value == "description")
{
txtDesc.Text = tag.Attributes["content"].Value;
}
}
}
}


وقتی روی دکمه بخوان کلیک می کنیم عنوان سایت وارد شده در تکست باکس و همچنین توضیحات آن نمایش داده می شود

با تشکر از دوستانی که لطف کردن و پاسخ دادند:قلب: