JAvaダイナミック爬虫類jsoupおよび正規表現の運用

4868 ワード

1.jsoupはjavaのHTML解析器で、あるURLアドレス、HTMLテキストの内容を直接解析することができます.http://jsoup.org/公式サイト
2.解析URLアドレス

1  Document doc = Jsoup

2                     .connect(url)

3                     .userAgent(

4                             "Mozilla/5.0 (Windows NT 6.1; WOW64; rv:37.0) Gecko/20100101 Firefox/37.0)") //   User-Agent

5                     .timeout(5000) //         

6                     .get();

View Code
 

 1 Elements elements = doc.getElementsByClass("desc");

 2 Elements subelements = elements.get(0).getElementsByTag("li");

 3  Elements dayElements = eachDayElement.getElementsByTag("tr");

 4  Elements firstSubElements = firstElement.getElementsByTag("td");

 5 String text = elements.get(0).text();

 6 private static String regEx_publishDate = "      \\s*(\\d+):(\\d+)\\s*   ";

 7     private static Pattern pattern_publishDate = Pattern

 8             .compile(regEx_publishDate);

 9 Matcher matcher = pattern_publishDate.matcher(text);

10 if (matcher.find()) {

11             int hour = Integer.parseInt(matcher.group(1));

12             int minute = Integer.parseInt(matcher.group(2));}

View Code
3.jsoupのjarパッケージが必要
4.\s 任意の空白文字に一致 \S空白文字以外の任意の文字を一致させる  \d一致数字 +1回以上繰り返す  * 0回以上繰り返す
demo:

1 (\\d{4})-(\\d{2})-(\\d{2})\\s+(\\d{2}):(\\d{2})  

2 (\\S+  \\S+):\\s+(\\S+)\\s+(\\S+)

3 \\s+(  \\S+):\\s+(\\S+)\\s+(\\S+)

4 \\s*(\\S+)\\s*

5      :\\s*(\\S+)\\s*"

View Code
正規表現構文:
https://msdn.microsoft.com/zh-cn/library/ae5bf541%28v=vs.80%29.aspx