|
魔界の仮面弁士さま
返信ありがとうございます。ノートPCが英語版のため、英語版の Visual Studioをしようしております。 私もLoadHtmlの間違いかもしれませんので、そちらを定義して試して見ます。
WebBrowser コントロールを使って HtmlDocument クラス経由で処理する方法と、Regex クラスを用いる方法を調べて実行してみました。 HtmlDocument クラスは中身を完全に理解しきれなかったので、Regex クラスを使用してみました。 Regexクラスは思っていたよりも、使いやすかったため、非常にわかりやすいコードになりました。
using System; using System.Collections.Generic; using System.Text; using System.Net; using System.Text.RegularExpressions;
namespace Project { public class Class2 { static void Main() { //Regex class string p = "<p>.*?< href=\".*?>(?<title>.*?)<a>.*?<font size=\".*?>(?<place>.*?)</font>.*?<small class=\".*?>< href=\".*?>(?<desc>.*?)<a></small>.*?</p>";
//Set URL WebClient wc = new WebClient(); string html = wc.DownloadString("http://kamloops.en.craigslist.ca/jjj/");
Regex re = new Regex(p, RegexOptions.IgnoreCase | RegexOptions.Singleline); int i = 0; //Read and write values for (Match m = re.Match(html); m.Success; m = m.NextMatch()) { string title = m.Groups["title"].Value; string place = m.Groups["place"].Value; string desc = m.Groups["desc"].Value.Replace(" "," "); Console.WriteLine(i+":"+title+", " + place +", " + desc); i++; } } } }
今回は時間の関係上こちらを使用しようとおもいます。先ほどのコードは後ほど試してみようと思います。 HtmlDocument クラスと、Regex クラスを用いる方法など考えもつかず、大変勉強になりました。
魔界の仮面弁士さま、ごうさま お忙しい中、時間を割いていただき、大変ありがとうございました。
|