データ抽出SDK:パート1

データ抽出SDKは.NET Framework 3.5で記述されており、テキストファイルおよびWebリソースからデータを抽出および分析するためのツールが含まれています。 調査の結果を聞いて、私は誰もが見られるように、Data Extracting SDK CTP(Community Technical Preview)の最初のバージョン投稿します。



主な機能:

SDKの主な機能について詳しく見ていきましょう。



データ抽出SDKの使用方法



適用分野:



HtmlProcessorおよびContentAnalyzerクラス



HtmlProcessorクラスは、HTMLを読み込んで処理するように設計されています。



主な機能:

ContentAnalyzerクラスはHtmlProcessorクラスの拡張であり、コンテンツの統計分析のためのツールが含まれています。



クラス図を以下に示します(クリック可能):



HTMLProcessor



HtmlProcessorの使用例:



HtmlProcessor proc = new HtmlProcessor(

new Uri ( "http://www.microsoft.com/" ),

new WebProxy( "http://111.111.11.1/" , true ));



proc.Initialize(); //

string html = proc.InnerHtml; // Html

string text = proc.InnerText; //



// DataTable

DataTable dt = proc.GetDataTableByTableIndex(0);



// "Access and connect with thousands of

// Microsoft Certified companies to find products and services"

string value = proc.GetHtmlString( "Microsoft Pinpoint" , "</div></div>" ).RemoveHtmlTags();



//

List <ImageInfo> images = proc.Images;




* This source code was highlighted with Source Code Highlighter .








WebProxyはコンストラクターで見落とされる可能性があります。



POSTリクエストを送信するには、次のコードを使用する必要があります。



HtmlProcessor proc = new HtmlProcessor(

new Uri ( "http://www.microsoft.com/" ),

new WebProxy( "http://11.11.1.1:111/" , true ));



proc.HttpMethod = HttpMethods.POST;

var parameters = new NameValueCollection();

parameters.Add( "name" , "value" );

proc.PostParameters = parameters;

proc.Initialize();




* This source code was highlighted with Source Code Highlighter .








LinksExtractorクラス



LinksExtractorクラスは、リンクを抽出するように設計されています。



主な機能:

クラス図:



LinksExtractor



ルール:

ルールを追加するには、シンプルなインターフェースを実装する必要があります。



public interface ICondition

{

bool Satisfied(LinkInfo linkInfo, string value);

bool Satisfied(string linkInfo, string value);

}








使用例:



LinksExtractor ext = new LinksExtractor( new Uri ( "http://microsoft.com/" ));



// , href "microsoft"

ext.AddRule( "microsoft" , new HrefMustContainCondition());



// 10

ext.Maximum = 10;



//

ext.ExtractHidden = true ;



//

ext.Extract();



//

var links = ext.Links;




* This source code was highlighted with Source Code Highlighter .








CTPバージョンでは、Maximumプロパティは100に制限されています。



実際の使用例- 指定されたゾーン内のサイトのリストを取得する方法



その他のクラス



WebScreenshotExtractorクラスとそれを使用するプログラムについては、 こちらをご覧ください



次回は、EmailsExtractor、PhonesExtractor、UrlsExtractor、GuidExtractor 、SEO、およびその他の機能のクラスについて説明しますが、いくつかの例はすでにここで確認できます



CodeplexからData Extraction SDK v.1.0 CTPをダウンロードします



実際の使用に関するいくつかの言葉



このSDKを使用して、次のアプリケーションが開発されました。

フィードバック



私は聞きたいです:





最後に、データ抽出タスクがある場合は、ご連絡ください:)



ご清聴ありがとうございました!



All Articles