0

次のコードを使用して RSS ニュースのトピックと概要を表示します。問題なく動作しますが、ニュース全体を自分のサイトに表示したいので、ユーザーがニュース リンクをクリックしてニュース全体をメイン サイトに表示できるようになりましたが、私のサイトに表示されます。可能ですか?RSS を使用して自分のサイトのコンテンツ全体を表示できますか?それともメインのニュース ページを解析して自分のサイトに表示する必要がありますか? このページを解析するのは非常に難しいと思います。

私のサーバーコード:

//Create a WebRequest
        WebRequest rssReq =
        WebRequest.Create("myRSSsite");
        //Create a Proxy
        WebProxy px = new WebProxy("myRSSsite", true);
        //Assign the proxy to the WebRequest
        rssReq.Proxy = px;
        //Set the timeout in Seconds for the WebRequest
        rssReq.Timeout = 5000;
        try
        {
            //Get the WebResponse
            WebResponse rep = rssReq.GetResponse();
            //Read the Response in a XMLTextReader
            XmlTextReader xtr = new XmlTextReader(rep.GetResponseStream());
            //Create a new DataSet
            DataSet ds = new DataSet();
            //Read the Response into the DataSet
            ds.ReadXml(xtr);
            //Bind the Results to the Repeater
            rssRepeater.DataSource = ds.Tables[2];
            rssRepeater.DataBind();

また、RSS を表示するために ASPX ページでリピーターを使用していますが、ニュース タイトル (メイン サイトへのリンク) と小さな要約を含むリストしかありません。データベースに保存できるように、ニュース HTML 全体を取得する方法はありますか?

4

1 に答える 1

1

サイトは、 Html Agility Packを使用してニュース記事をスクレイピングします。

HttpWebRequest oReq = (HttpWebRequest)WebRequest.Create(url);
HttpWebResponse resp = (HttpWebResponse)oReq.GetResponse();

var doc = new HtmlAgilityPack.HtmlDocument();

doc.Load(resp.GetResponseStream());
var element = doc.GetElementbyId("Id-of-the-article-body-element");
string content = element.OuterHtml;

記事の本文要素に ID がない場合は、XPath クエリを使用して検索する必要があります。HTML Agility Pack に関するこのチュートリアルをご覧ください。

于 2012-05-20T11:08:49.517 に答える