package Reptile_package; import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.net.URL; import java.net.URLConnection; import java.util.regex.Matcher; import java.util.regex.Pattern; public class Reptile_demo2 { public static void main(String[] args) throws IOException { /* 把链接:http://www.hzxdjm.com/131133.html 中所有的身份证号码都爬取出来。 */ //创建一个URL对象 URL url = new URL("http://www.hzxdjm.com/131133.html"); //连接上这个网址 //细节:保证网络是畅通的 URLConnection conn = url.openConnection(); //创建一个对象去读取网络中的数据 BufferedReader br = new BufferedReader(new InputStreamReader(conn.getInputStream())); String line; //获取正则表达式的对象 String regex = "[1-9]\\d{17}"; Pattern pattern = Pattern.compile(regex); //在读取的时候,每次读一整行 while ((line = br.readLine()) != null) { //拿着文本匹配器的对象matcher按照pattern的规则去读取当前这一行信息 Matcher matcher = pattern.matcher(line); while (matcher.find()) { System.out.println(matcher.group()); } } br.close(); } }