`
wb17534806
  • 浏览: 11585 次
  • 性别: Icon_minigender_1
  • 来自: 长沙
社区版块
存档分类
最新评论

网络蜘蛛程序学习1

阅读更多

网络蜘蛛程序学习1

Bot程序:一种“有意识”的Internet程序,能从指定的Internet站点上检索信息。有人叫这个为:网络机器人

例如:桌面应用程序会检查邮箱邮件,有新邮件会自动提醒。但是Bot程序是否合法?有些网站明令禁止,比如:股票站点。所以,作为Bot程序搜索必须合法。

Spider程序:一种专业化的Bot程序,用于查找大量的Web页面,Spider程序事先并不知道将要查询的页面,程序通过上一个页面查找下一个页面。有人叫这个为:网络蜘蛛程序

蜘蛛程序应用在搜索引擎方面比较多,还可以应用于:扫描出中断的链接等。

 

1java套接字编程技术

Web是建立在HTTP之上的协议,而HTTP又是建立在TCP/IP之上的协议,而TCP/IP它同时也是一种套接字协议。

TCP/IP网络上所有的计算机都看成是平等的,这种类型的网络叫对等网络。服务器和普通的网络也是对等的。

网络编程=套接字编程。网络上的每一台电脑都有很多套接字辅助计算机程序生效。这些套接字叫端口。端口号很重要,其中一个就是80端口号,是HTTP使用。多个客户端是可以同时连接到同一台服务器。但是每个时刻只有一个程序能监听同样的服务器端口。例如:很多电视机(客户端)可以调到一个特定的频道(服务器),但是几个台(服务器群)不可能在同一个频道上播放。

TCP/IP协议是由两个协议组合:传输控制协议(TCP)和Internet协议(IP)。IP负责将数据包从一个节点传到另外一个节点,而TCP负责校验数据正确性。

主机名和IP是多对多的关系。通过ping主机名可以得到主机的IP

DNS如何将主机名解析成IP地址

主机名转换成IP地址有多精确呢?可以通过DNS来转换。

DNS服务器是指能返回与特定主机名相关联的IP地址的服务器。解析主机名的操作由大批设置在世界各地的DNS服务器完成。而DNS也是通过主机名,为了解决矛盾,DHCP产生了。

在很多网络中,计算机系统都是用DHCP取代强行要求用户指定大部分网络配置信息(包括IP地址和DNS服务器)。利用DHCP使IP网络上的每台jsj都能从DHCP服务器上获取他们的初始配置信息,无需用户自己设置。用户的计算机第一次联网都会申请这些信息。

使用java实现主机名查找IP地址:

package wans.com.chapter1;

import java.net.InetAddress;

import java.net.UnknownHostException;

/**

 * 使用主机名查找IP地址

 * @author wans

 */

public class FindIP {

    public static void main(String[] args) throws UnknownHostException {

       String hostname = "www.baidu.com";    

       if(hostname.length() <= 0) {

           System.out.println("主机名不能为空!");

       }else {

           InetAddress address = InetAddress.getByName(hostname);

           System.out.println("IP地址为: " + address);

       }

    }

}

 

Java I/O编程技术

JavaI/O类由输入流,输出流,阅读器,写入器,过滤器组成。

1,输出流

OutputStreampublic abstract class OutputStream extends Object implements Closeable, Flushable

直接已知子类: ByteArrayOutputStream, FileOutputStream, FilterOutputStream, ObjectOutputStream, OutputStream, PipedOutputStream

方法摘要

 void

close()                  关闭此输出流并释放与此流有关的所有系统资源。

 void

flush()                  刷新此输出流并强制写出所有缓冲的输出字节。

 void

write(byte[] b)            b.length 个字节从指定的字节数组写入此输出流。

 void

write(byte[] b, int off, int len)   

将指定字节数组中从偏移量 off 开始的 len 个字节写入此输出流。

abstract  void

write(int b)              将指定的字节写入此输出流。

 

2,输入流

InputStreampublic abstract class InputStream extends Object implements Closeable

直接已知子类: AudioInputStream, ByteArrayInputStream, FileInputStream, FilterInputStream, InputStream, ObjectInputStream, PipedInputStream, SequenceInputStream, StringBufferInputStream

方法摘要

 int

available()           返回此输入流方法的下一个调用方可以不受阻塞地从此输入流读取(或跳过)的字节数。

 void

close()           关闭此输入流并释放与该流关联的所有系统资源。

 void

mark(int readlimit)           在此输入流中标记当前的位置。

 boolean

markSupported()           测试此输入流是否支持 mark reset 方法。

abstract  int

read()           从输入流读取下一个数据字节。

 int

read(byte[] b)           从输入流中读取一定数量的字节并将其存储在缓冲区数组 b 中。

 int

read(byte[] b, int off, int len)           将输入流中最多 len 个数据字节读入字节数组。

 void

reset()           将此流重新定位到对此输入流最后调用 mark 方法时的位置。

 long

skip(long n)           跳过和放弃此输入流中的 n 个数据字节。

 

Java中的套接字编程

Java定义了两个类:SocketServerSocket。使用输入和输出流进行交换。

 

2HTTP超文本传输协议

HTTPHTTPSHTTP加密形式)。

URLURI的一个子集(略)

 

 

 

 

 

分享到:
评论

相关推荐

    java网络蜘蛛程序及源码

    本资源提供了一个基于Java实现的网络蜘蛛程序及其源码,适用于学习和研究网络爬虫技术。这个程序依赖于Apache Commons HttpClient v3.0库,这是一个强大的HTTP客户端库,为Java开发者提供了丰富的功能来执行HTTP请求...

    搜索引擎-网络蜘蛛程序源代码

    在这个“搜索引擎-网络蜘蛛程序源代码”中,我们可以深入理解搜索引擎工作的关键技术,包括分词技术、排序技术和网络爬虫程序的设计与实现。 首先,分词技术是搜索引擎处理自然语言的基础步骤。在中文环境下,由于...

    简单的蜘蛛程序

    通过学习和实践创建简单的蜘蛛程序,你不仅可以深入理解网络爬虫的工作原理,还能掌握网络请求、HTML解析和数据存储等基础技能。随着经验的积累,你可以逐步升级你的爬虫,实现更复杂的任务,如处理JavaScript渲染的...

    java网络蜘蛛示例程序

    **Java网络蜘蛛示例程序**,也被称为网络爬虫或网页抓取器,是一种自动浏览互联网并抓取信息的程序。在本示例中,它采用Java编程语言编写,特别是利用了多线程技术,提高了数据抓取的效率。Applet是Java的一种小程序...

    网络抓取蜘蛛源程序

    在实际应用中,网络抓取蜘蛛程序通常需要具备以下核心功能: 1. **URL管理**:跟踪已访问和待访问的URL,防止重复抓取和无限循环。 2. **HTTP请求**:发送GET或POST请求到目标URL,获取网页内容。 3. **网页解析**...

    网络蜘蛛程序(基于MFC的多文档程序)

    总结来说,这个基于MFC的网络蜘蛛程序结合了MFC的强大界面支持和网络爬虫的技术,提供了一个直观的平台,让用户能够观察和控制爬虫的运行过程,对于学习和实践Windows应用程序开发以及网络爬虫技术都是很好的资源。...

    一个简单的java网络蜘蛛程序,非常适合初学者

    Java网络蜘蛛程序,也称为网络爬虫或网页抓取器,是用于自动化地从...通过学习和实践这个简单的Java网络蜘蛛程序,初学者可以建立起对网络爬虫基本概念和技术的理解,为进一步深入学习和开发更复杂的爬虫项目打下基础。

    java写的一个简单的蜘蛛程序

    在编程领域,蜘蛛程序(也称为网络爬虫或Web抓取器)是一种自动遍历互联网并抓取网页信息的程序。在这个标题中,我们关注的是一个使用Java语言编写的简单版本的蜘蛛程序。Java作为一门面向对象的编程语言,具有跨...

    数据采集、蜘蛛程序制作资料

    通过上述文件,学习者将能够掌握C#环境下数据采集和蜘蛛程序的基本原理、实现技术和最佳实践。每个文档都针对一个具体主题,共同构成了一套完整的知识体系,对于想要从事相关开发的人员来说,是非常宝贵的学习资源。

    蜘蛛采集程序(源代码)

    【标题】"蜘蛛采集程序(源代码)"是一个基于C#和.NET框架开发的网络爬虫应用,主要用于自动化地抓取互联网上的网址和网页内容。它利用了正则表达式这一强大的文本处理工具来识别和提取网页上的信息。 【描述】中提到...

    JSp网络蜘蛛采集程序

    总的来说,JSP网络蜘蛛采集程序结合了JSP的动态生成能力和网络爬虫的抓取技术,提供了一个实用的学习案例,帮助开发者了解如何在Java环境中构建网络爬虫。通过对这个程序的深入研究,可以掌握网络爬虫的基础知识,...

    网络蜘蛛程序及java源码

    网络蜘蛛程序,也被称为网页爬虫或网络抓取工具,是用于自动遍历互联网并抓取网页内容的软件。在IT行业中,它们扮演着至关重要的角色,尤其在数据分析、搜索引擎优化(SEO)以及大规模信息采集等领域。Java作为一门...

    网络蜘蛛最新源码

    网络蜘蛛,也称为Web爬虫或网页抓取程序,是用于自动浏览互联网并抓取网页内容的软件工具。它们在IT行业中扮演着重要的角色,特别是在搜索引擎优化、数据分析、市场研究和自动化信息收集等方面。以下是对"网络蜘蛛...

    C#写的网络蜘蛛程序

    【C#编写的网络蜘蛛程序】是一种用于自动化网络数据抓取的软件,它模拟人类浏览网页的行为,遍历互联网上的信息。在这个项目中,我们主要关注的是如何利用C#编程语言构建一个网络爬虫,其核心功能包括网页的请求、...

    蜘蛛程序源码v1·0C开发

    【标题】"蜘蛛程序源码v1·0C开发"涉及的是搜索引擎爬虫技术的实现,其中C语言作为编程基础,用于构建爬虫系统。在IT领域,爬虫是一种自动提取网页信息的程序,它通过模拟浏览器的行为,遵循HTTP协议,逐页抓取并...

    网络蜘蛛---微软开源程序

    微软公司也涉足这一领域,开发了开源的网络蜘蛛程序,旨在提升Web内容的抓取效率和质量。 微软开源网络蜘蛛程序的出现,不仅展示了其在开放源代码领域的积极态度,也提供了开发者一个强大的工具,用于构建自定义的...

    一个简单的网络蜘蛛,用于搜索网站。

    网络蜘蛛,也称为网络爬虫或网页抓取程序,是一种自动化程序,用于浏览互联网并抓取网页内容。...通过学习和实践这个简单的网络蜘蛛,我们可以深入了解网络爬虫的工作原理,并扩展其功能以满足特定的需求。

    java写的简单蜘蛛程序

    Java编写的简单蜘蛛程序,通常是指使用Java语言实现的网络爬虫软件,它能够自动抓取互联网上的网页信息。在编程领域,网络爬虫是一种自动化技术,用于从万维网中提取大量数据,用于数据分析、搜索引擎索引或其他特定...

    易语言网络蜘蛛模拟

    在这个易语言网络蜘蛛模拟源码中,我们可以学习到如何在易语言环境下实现一个基础的网络爬虫程序。"子程序1"可能是指该源码中的第一个主要功能模块,通常负责爬虫的基本工作流程,如发起HTTP请求、解析HTML页面、...

Global site tag (gtag.js) - Google Analytics