简单的网络爬虫

import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.net.URL;
import java.net.URLConnection;
import java.util.regex.Matcher;
import java.util.regex.Pattern;

public class RegexWeb
{

    /**
     * 网页爬虫
     */
    public static void main(String[] args) throws Exception
    {
        //URL
        String str_url = "http://tieba.baidu.com/p/2314539885";
        //规则
        //String regex = "\\[email protected]\\w+\\.[a-zA-Z]{2,3}";
        String regex = "(\\w)+(\\.\\w+)*@(\\w)+((\\.\\w{2,3}){1,3})";
        regexForWeb(str_url,regex);
    }

    private static void regexForWeb(String str_url,String regex) throws Exception
    {

        URL url = new URL(str_url);
        //打开URL连接
        URLConnection conn = url.openConnection();
        //设置网络连接时间
        conn.setConnectTimeout(1000*10);
        //读取指定网络地址中的文件
        BufferedReader buf = new BufferedReader(new InputStreamReader(conn.getInputStream()));
        //把正则表达式转换成正则对象
        Pattern p = Pattern.compile(regex);
        //每行读取的内容
        String line = null;
        while((line=buf.readLine())!=null){
            //Pattern对象转换成Matcher对象,操作字符串
            Matcher m = p.matcher(line);
            //部分匹配
            while(m.find()){
                //返回匹配成功的部分
                System.out.println(m.group());
            }
        }
    }

}
时间: 2024-08-05 06:04:20

简单的网络爬虫的相关文章

Python:requests库、BeautifulSoup4库的基本使用(实现简单的网络爬虫)

Python:requests库.BeautifulSoup4库的基本使用(实现简单的网络爬虫) 一.requests库的基本使用 requests是python语言编写的简单易用的HTTP库,使用起来比urllib更加简洁方便. requests是第三方库,使用前需要通过pip安装. pip install requests 1.基本用法: import requests #以百度首页为例 response = requests.get('http://www.baidu.com') #res

爬虫学习之一个简单的网络爬虫

这是一个网络爬虫学习的技术分享,主要通过一些实际的案例对爬虫的原理进行分析,达到对爬虫有个基本的认识,并且能够根据自己的需要爬到想要的数据.有了数据后可以做数据分析或者通过其他方式重新结构化展示. 什么是网络爬虫 网络爬虫(又被称为网页蜘蛛,网络机器人,在FOAF社区中间,更经常的称为网页追逐者),是一种按照一定的规则,自动地抓取万维网信息的程序或者脚本.另外一些不常使用的名字还有蚂蚁.自动索引.模拟程序或者蠕虫.via 百度百科网络爬虫 网络蜘蛛(Web spider)也叫网络爬虫(Web c

用Python写一个最简单的网络爬虫

什么是网络爬虫?这是百度百科的解释: 网络爬虫(又被称为网页蜘蛛,网络机器人,在FOAF社区中间,更经常的称为网页追逐者),是一种按照一定的规则,自动的抓取万维网信息的程序或者脚本.另外一些不常使用的名字还有蚂蚁,自动索引,模拟程序或者蠕虫. 爬虫可以做什么?爬虫可以帮助我们在茫茫互联网中爬取我们需要的特定数据,这个特定数据可以是任何想获得的数据. 爬虫是一个让人热血的话题,因为当你在写爬虫的时候,你会感觉到自己是在做一件很NB的事,而每当写出一个爬虫,就会在此基础上不断尝试写出更NB的爬虫,有

爬虫其实很简单!——网络爬虫快速实现(一)

今天我来带领大家一起学习编写一个网络爬虫!其实爬虫很简单,没有想象中那么难,也许所有学问都是这样,恐惧源自于无知.废话不多说,现在开始我们的爬虫之旅吧. 爬虫是什么? 我们时常听说编程大牛嘴边一直念叨着"网络爬虫",那网络爬虫究竟是何方神圣呢? 网络爬虫能够模仿用户浏览网页,并将所想要的页面中的信息保存下来.有些同学不禁要问:"我自己浏览网页,可以手动将数据保存下来啊,为何要写个程序去爬取数据呢?"道理其实很简单,程序能够在短时间内访问成千上万的页面,并且在短时间内

在python3中使用urllib.request编写简单的网络爬虫

Python官方提供了用于编写网络爬虫的包 urllib.request, 我们主要用它进行打开url,读取url里面的内容,下载里面的图片. 分以下几步: step1:用urllib.request.urlopen打开目标网站 step2:由于urllib.request.urlopen返回的是一个http.client.HTTPResponse object,无法直接读取里面的内容,所以直接调用该对象的方法read(),获取到页面代码,存到html里 step3:构建正则表达式,从页面代码里

也写一个简单的网络爬虫

引子 在cnblogs也混了许久,不过碍于平日工作太忙,一篇随笔也没有写过.最近经常感觉到自己曾经积累过的经验逐步的丢失,于是开通了博客,主要是记录一下自己在业余时间里玩的一些东西. 缘起 言归正传.某次在在某高校网站闲逛,看到了一些有趣的东西想要保存起来,但是却分散在各个页面,难以下手.使用baidu,google却有无法避免的搜索到此站点之外的内容.于是就想如果有一个爬虫,可以抓取指定域名的某些感兴趣的内容,不是很好.在网上简单搜索了一下,简单的都不满意,功能强大的又太复杂,就想自己写一个.

用urllib2实现简单的网络爬虫1

玩python的同学都避免不了想写个爬虫玩玩,并且一般都以抓取XX图片为主,当然楼主也不例外~~ 这里先用比较原始的方式:urllib2 + 正则表达式,后面再尝试requests 背景:假设有个网站,是关于一些艺术家及其作品介绍的,登陆进去后,每一页是艺术家的头像和名字列表(由于艺术家很多,所以有很多页):  点击艺术家的头像或名字,就进入该艺术家的主页,主页上有该艺术家的详细介绍和作品列表(由于每个艺术家有很多作品,所有可能会有很多页):   点击其中一部作品,就进入该作品的详细介绍页面,包

简单的网络爬虫,下载GitHub的头像

基于Web Magic的一个爬虫框架(https://github.com/code4craft/webmagic)开发的,可以下载github的用户的头像. 使用Apache的HttpClient对页面进行请求,用JSoup对下载来的html文档进行过滤找到合适的图片链接,再发送一次HttpRequest去下载图片并保存到本地. 1 package webcrawler.webcrawler; 2 import java.awt.im.InputContext; 3 import java.i

简单的网络爬虫程序(Web Crawlers)

程序比较简单,但是能体现基本原理. package com.wxisme.webcrawlers; import java.io.*; import java.net.*; /** * Web Crawlers * @author wxisme * */ public class WebCrawlers { public static void main(String[] args) { URL url = null; try { url = new URL("http://www.baidu.