ورود / ثبت نام
0
0

اضافه کردن جستجوی Google News به یک پروژه ASP.Net

279 بازدید
Google News

Google News

در این مقاله نشان می دهیم که چگونه جستجوی Google News را به یک پروژه ASP.Net اضافه نماییم. مراحل انجام عملیات به صورت گام به گام به همراه تصاویر برایتان در ادامه ی مطلب قرار داده شده است. با من همراه باشید …

Google News

Google News یک خبرخوان رایگان است که آخرین اخبار را از هزاران انتشارات و نشریه ها توسط گوگل انتخاب و ارائه می کند.این سرویس مقالات حبری که در ۳۰ روز گذشته در وب سایت های خبری مختلف ظاهر شده اند، پوشش می دهد. در مجموع، خبرخوان Google News حدود ۴۵۰۰ سایت از زبان های مختلف را پوشش می دهد. در صفحه اول تقریبا ۲۰۰ کاراکتر از مقاله را نمایش می دهد و برای ادامه خبر، لینکی فراهم می کند. وب سایت ها نیازی به توضیحات ندارند، اما سایت ها نیاز به توضیحات دارند که در قسمت توضیحات مقاله نوشته می شود.

[divider style=”normal” top=”20″ bottom=”20″] [box type=”shadow” align=”” class=”” width=””]

پیشنها میکنم : ورود به سایت با استفاده از اکانت گوگل در ASP.Net

[/box] [divider style=”normal” top=”20″ bottom=”20″]

در این مقاله نشان می دهیم که چگونه می توان این سرویس را به اپلیکیشن خود اضافه کنیم. برای این کار لازم است که رفرنس GoogleSearchAPI.dll را به برنامه اضافه کنیم.

این dll را می توانید از لینک زیر دانلود نمایید:

Google Search .NET – API for Google Services in C# .NET

برای استفاده از این قابلیت در وب سایت خود، ابتدا یک پروژه جدید ایجاد کرده و یک WebForm به آن اضافه می کنیم.

روی نام پروژه راست کلیک می کنیم و از گزینه Add گزینه Reference.Browse را انتخاب کرده و رفرنس را اضافه می کنیم.

Google News

Dll را انتخاب کرده و اضافه می کنیم.

Google News

بعد از اضافه کردن آن، پروژه شما به شکل زیر درمی آید:

Google News

حالا همه چیز آماده است، باید API را فراخوانی کرده و یک نمونه جدید از آن را در صفحه نمایش دهیم.

صفحه خود را به شکل زیر طراحی می کنیم:

Google News

کد HTML آن به صورت زیر می باشد:

<%@ Page Language="C#" AutoEventWireup="true" CodeFile="News.aspx.cs" Inherits="News" %>  
  
<!DOCTYPE html>  
  
<html xmlns="http://www.w3.org/1999/xhtml">  
<head runat="server">  
    <title></title>  
</head>  
<body>  
    <form id="form1" runat="server">  
        <asp:TextBox ID="txt_search" runat="server" Width="500px" Height="30px" ></asp:TextBox>  
        <asp:Button runat="server" Text="SEARCH" ID="btn_btn" Height="40px" OnClick="btn_btn_Click" CommandName="Search" />  
     
        <br />  
         
        <asp:DataList ID="DataList1" runat="server" BackColor="#CCCCCC" BorderColor="#999999" BorderStyle="Solid" BorderWidth="3px" CellPadding="4" GridLines="Both" CellSpacing="2" ForeColor="Black" OnItemDataBound="DataList1_ItemDataBound">  
            <FooterStyle BackColor="#CCCCCC" />  
            <HeaderStyle BackColor="Black" Font-Bold="True" ForeColor="White" />  
            <ItemStyle BackColor="White" />  
            <SelectedItemStyle BackColor="#000099" Font-Bold="True" ForeColor="White" />  
            <HeaderTemplate>  
                   <div>  
                       Today News  
      
                  </div>  
                  
            </HeaderTemplate>  
            <ItemTemplate>  
                <div>  
                      <asp:Image ID="imgEmp" runat="server" Width="100px" Height="120px" ImageUrl='<%# Bind("Image") %>' style="padding-left:40px"/><br />  
                     
                </div>  
                <div>  
                    <asp:Label runat="server" ID="lbl_content" Text='<%#Eval("Content") %>' Font-Bold="true"> 

قسمت طراحی نیز انجام شد. حالا باید کدهای موردنظر برای دریافت خبرها را بنویسیم. قبل از نوشتن هر کدی باید فضای نام زیر را به پروژه اضافه کنیم:

using Google.API.Search;

کدی که برای دریافت همه جزئیات اخبار موردنیاز است، به شکل زیر می باشد:

GnewsSearchClient client = new GnewsSearchClient("myclient");    
  
    IList<INewsResult> results=client.Search("Any Topics News", 10); 

این کد همه خبرها را از وب سایت های مختلف برای شما می آورد. در اینجا ما مشخص کرده ایم که هر بار ۱۰ خبر باهم وارد می شوند.

در کد زیر نحوه اتصال به دیتابیس از طریق datlist را نیز مشاهده می کنیم.

protected void Page_Load(object sender, EventArgs e)  
    {  
        if(!IsPostBack)  
        {  
            GnewsSearchClient client = new GnewsSearchClient("myclient");  
            IList<INewsResult> results;  
            results = client.Search("Asia News", 10);  
              
  
  
            DataSet ds = new DataSet();  
            DataTable dt = new DataTable();  
  
            dt.Columns.Add(new DataColumn("Content", typeof(string)));  
            dt.Columns.Add(new DataColumn("Url", typeof(string)));  
            dt.Columns.Add(new DataColumn("Image", typeof(string)));  
            dt.Columns.Add(new DataColumn("Link", typeof(string)));  
            dt.Columns.Add(new DataColumn("Publisher", typeof(string)));  
            dt.Columns.Add(new DataColumn("Date", typeof(string)));  
  
  
  
  
            foreach (var news in results)  
            {  
  
                DataRow dr = dt.NewRow();  
  
                dr["Content"] = news.Content;  
  
                dr["Image"] = news.Image;  
                dr["Link"] = news.Url;  
                
                dt.Rows.Add(dr);  
                DataList1.DataSource = dt;  
                DataList1.DataBind();  
  
  
            }  
  
         
        }  
  
    }  

همانطور که مشاهده می کنید، با بارگزاری صفحه اخبار مربوطه نمایش داده می شوند.

کد کامل مربوط به جستجوی هر نوع خبری را می توانید در ادامه مشاهده کنید:

using Google.API.Search;  
using System;  
using System.Collections.Generic;  
using System.Linq;  
using System.Web;  
using System.Web.UI;  
using System.Web.UI.WebControls;  
using System.Data;  
  
  
public partial class News : System.Web.UI.Page  
{  
     
    protected void Page_Load(object sender, EventArgs e)  
    {  
        GnewsSearchClient client = new GnewsSearchClient("myclient");  
        IList<INewsResult> results;  
        if(!IsPostBack)  
        {  
             
            results = client.Search("Asia News", 10);  
              
  
  
            DataSet ds = new DataSet();  
            DataTable dt = new DataTable();  
  
            dt.Columns.Add(new DataColumn("Content", typeof(string)));  
            dt.Columns.Add(new DataColumn("Url", typeof(string)));  
            dt.Columns.Add(new DataColumn("Image", typeof(string)));  
            dt.Columns.Add(new DataColumn("Link", typeof(string)));  
            dt.Columns.Add(new DataColumn("Publisher", typeof(string)));  
            dt.Columns.Add(new DataColumn("Date", typeof(string)));  
  
  
  
  
            foreach (var news in results)  
            {  
  
                DataRow dr = dt.NewRow();  
  
                dr["Content"] = news.Content;  
  
                dr["Image"] = news.Image;  
                dr["Link"] = news.Url;  
                
                dt.Rows.Add(dr);  
                DataList1.DataSource = dt;  
                DataList1.DataBind();  
  
  
            }  
  
         
        }  
  
    }  
    public  void searchNews(string prefix)  
    {  
  
        results = client.Search(prefix, 10);  
  
  
        DataSet ds = new DataSet();  
        DataTable dt = new DataTable();  
        
        dt.Columns.Add(new DataColumn("Content", typeof(string)));  
        dt.Columns.Add(new DataColumn("Url", typeof(string)));  
        dt.Columns.Add(new DataColumn("Image", typeof(string)));  
        dt.Columns.Add(new DataColumn("Link", typeof(string)));  
          
  
  
          
        foreach (var news in results)  
        {  
  
            DataRow dr = dt.NewRow();  
              
            dr["Content"] = news.Content;  
  
            dr["Image"] = news.Image;  
            dr["Link"] = news.Url;  
            
            dt.Rows.Add(dr);  
            DataList1.DataSource = dt;  
            DataList1.DataBind();  
  
  
        }  
  
         
  
    }  
    protected void btn_btn_Click(object sender, EventArgs e)  
    {  
  
        searchNews(txt_search.Text);  
           
       
         
    }  
      
}  

Google News

موفق باشید !

  • پسورد: www.mspsoft.com
آیا این مطلب را می پسندید؟
https://www.mspsoft.com/?p=18540
اشتراک گذاری:
واتساپتوییترفیسبوکپینترستلینکدین
داریوش فرخی
داریوش فرخی هستم از سال 92 شروع به یادگیری برنامه نویسی و از سال 93 در بخش برنامه نویسی و تولید محتوای سایت mspsoft.com مشغول هستم. فعالیتم نیز بیشتر در زمینه های برنامه نویسی با سی شارپ و asp.net بوده است. اوقات فراغتم را هم غالبا با تماشای فیلم یا بازی های کامپیوتری پر میکنم .
مطالب بیشتر
برچسب ها:

نظرات

0 نظر در مورد اضافه کردن جستجوی Google News به یک پروژه ASP.Net

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

هیچ دیدگاهی نوشته نشده است.