当前位置: 首页 > 编程日记 > 正文

java网页抓取

网页抓取就是,我们想要从别人的网站上得到我们想要的,也算是窃取了,有的网站就对这个网页抓取就做了限制,比如百度

直接进入正题

 1 //要抓取的网页地址
 2 String urlStr = "http://**************/center";
 3 URL url = new URL(urlStr);
 4 URLConnection connection = url.openConnection();
 5 //得到网页的编码方式
 6 System.out.println(connection.getContentType());
 7         
 8 //读取网页的的内容
 9 BufferedReader read = new BufferedReader(new InputStreamReader(url.openStream(), "utf-8"));
10 File file = new File("d:/test.html");
11 BufferedWriter write = new BufferedWriter(new OutputStreamWriter(new FileOutputStream(file)));
12 if(read != null){
13 String s = null;
14 while((s = read.readLine()) != null){
15     System.out.println(s);
16     write.write(s);
17     write.flush();
18 }
19 read.close();
20 write.close();

很简单,大家不用死记硬背,我的这个思想是,

1.通过一个url打开一个连接

2.通过这个连接来得到网页的编码方式

3.通过这个连接打开一个写入流,我这里把这个网页写到我的本地了,大家在练习的时候随意。

4.进行标准的写入

5.最重要一步,关闭连接

就这么简单的一个小网页抓取。

防止你的网页被别人抓取试用robots.txt,具体怎么还没研究过,http://www.robotstxt.org/ 这个是官网

测试你的网站是否生效了,直接http://网站名/robots.txt如果显示,则证明成功。

转载于:https://www.cnblogs.com/duwenlei/p/3480755.html

相关文章:

四月青少年编程组队学习(图形化四级)Task05

电子学会 软件编程(图形化)四级 组队学习 试题来源: 青少年软件编程(Scratch)等级考试试卷(四级)【2019.12】青少年软件编程(Scratch)等级考试试卷(四级&am…

Python列表split方法

转载自:https://www.cnblogs.com/douzi2/p/5579651.html 1、split翻译为分裂。 split()就是将一个字符串分裂成多个字符串组成的列表。 2、split()当不带参数时以空格进行分割,当带参数时,以该参数进行分割。 a、当不带参数时 st0 song …

顶级数据库管理系统的性能比较研究(论文翻译)

本文译自 《A Comparative Study on the Performance of the Top DBMS Systems 》Youssef Bassil LACSC – Lebanese Association for Computational Sciences Registered under No. 957, 2011, Beirut, Lebanon 摘要 数据库管理系统是当今将数据组织成可以搜索和更新的集合地…

debugger 调试的一些经验

1. 如果没有firebug , 可以用firebug-lite.js 内嵌的调试方式。 2. console.log 不是所有浏览器都支持console.log 在IE或者没有调试窗口的浏览器中,console.log会undefined var db {switch:true} db.log function(){if(!this.switch) return ;if( typ…

spring boot 2.0 源码分析(二)

在上一章学习了spring boot 2.0启动的大概流程以后,今天我们来深挖一下SpringApplication实例变量的run函数。 先把这段run函数的代码贴出来: /*** Run the Spring application, creating and refreshing a new* {link ApplicationContext}.* param args…

四月青少年编程组队学习(Python一级)Task01

电子学会 软件编程(Python)一级 组队学习 试题来源 青少年软件编程(Python)等级考试试卷(一级)【2020.06】青少年软件编程(Python)等级考试试卷(一级)【202…

hung-yi lee_p1_机器学习是什么

文章目录1.你想找什么样的函式2.怎么告诉机器你想找什么样的函式3.机器怎么找出你想要的函式机器学习就是自动找函式1.你想找什么样的函式 Regression(回归)——想找的函式输出是一个数值 Binary Classification——想找的函式输出是Yes or No(Pos or Neg) Multi-class Classi…

excel导入SQL脚本

exec sp_configure show advanced options,1 reconfigure exec sp_configure Ad Hoc Distributed Queries,1 reconfigure SELECT * INTO tmp_asset FROM OPENROWSET(Microsoft.Jet.OLEDB.4.0, Excel 8.0;Databased:\Excel数据源\资产印章.xls, SELECT * FROM [Sheet1$]) ; 转…

Hadoop hdfs完全分布式搭建教程

本文转载自:https://www.cnblogs.com/ysocean/p/6965197.html 1、安装环境 ①、四台Linux CentOS6.7 系统 hostname ipaddress subnet mask geteway 1、 master 192.168.146.200 255.255…

四月青少年编程组队学习(Python一级)Task02

电子学会 软件编程(Python)一级 组队学习 试题来源 青少年软件编程(Python)等级考试试卷(一级)【2020.06】青少年软件编程(Python)等级考试试卷(一级)【202…

软件测试知识概述

本篇内容关于【1】缺陷(bug)的类型【2】软件测试与SQA的关系【3】软件测试的七项基本原则【4】将软件测试按照不同标准进行分类【5】软件测试过程模型 缺陷(bug)类型 缺陷可能存在于程序文档(软件) 衡量缺陷的唯一标准是是否符合用户需求 ①功能未实现 ②功能实现了但性能有差异…

Hadoop基础-网络拓扑机架感知及其实现

Hadoop基础-网络拓扑机架感知及其实现 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任。 一.网络拓扑结构 在本地网络中,两个节点被称为“彼此近邻”是什么意思?在海量数据处理中,…

批量修改图片以及加水印

好久木有来写点什么了.. 前段时间挺忙的. 今天上来分享一个,这几天我给商城图片加水印的代码吧.因为产品编辑那边是先把图片都上传完成了,所以只能做批量修改图片来完成给所有图片加水印的效果. 类似DX、京东效果. 现在正在开发的B2C项目商城: www.oxozoom.com 也希望更多能…

计算机书集下载链接

http://nic.biti.edu.cn/china-pub/ 我在那下了一本:XML高级编程转载于:https://www.cnblogs.com/dyuan/archive/2004/03/12/2966.html

Microsoft PlayReady DRM

支持在 Web 浏览器中使用加密媒体扩展和 Microsoft PlayReady DRM 本文内容 简介实现方法万维网联合会 (W3C) HTML5 加密媒体扩展 (EME) 为网站引入了一项功能,可在不使用插件的情况下播放受数字版权管理 (DRM) 保护的内容。Windows 8.1 上的 Internet Explorer 11 …

Android Binder概述

背景知识为了更好的理解binder,我们要先澄清一下概念,因为Android 基于Linux内核,我们有必要了解相关知识。进程隔离进程隔离是为了保护操作系统进程之间互不干扰而设计的,这个技术是为了避免进程A写入进程B准备的,进程…

如何用Asp判断你的网站的虚拟物理路径

appath方法 < p align"center" > < font size"4" face"Arial" > < b > The Physical path to this virtual website is: < /b > < /font > < font color"#FF0000" size"6" face"Aria…

总结:SQL的优缺点及与NoSQL对比

SQL在这里指的是关系型数据库&#xff0c;NoSQL指元组存储&#xff1f;

关于成功的因素-----谨记

引导语&#xff1a;一个人生活的环境&#xff0c;对他树立理想和取得成就有着重要的影响。坚忍&#xff0c;是成大事者的共同特征。没有足够的知识储备&#xff0c;一个人难以在工作和事业中取得突破性进展&#xff0c;难以向更高地位发展。 【意志力】 意志力是一种…

最常用的Linux命令

基础命令&#xff1a; &#xff08;一&#xff09;cd&#xff1a;进入文件目录 cd / #进入Linux根目录 cd ~ #进入当前用户Home目录&#xff0c;例如root用户 cd .. #进入上一层目录(根目录下没有上一层)&#xff0c;…

Delphi数据库开发之TTable篇1

既然是说Delphi中的SQL使用&#xff0c;肯定离不开TDataSet派生出来的DataSet控件&#xff08;应该说类比较确切些&#xff09;&#xff0c;这里我说的DataSet只是一个大类的称呼&#xff0c;并不是特指实际的TDataSet。在众多控件中其实可以根据如何操作数据分为两类。 其中一…

大型数据库入门

本文介绍大型数据库的概念及其性能决定因素&#xff0c;以及如何优化性能。 什么是大型数据库 -没有一个标准定义 -包含非常多元组(数据库行)的数据库&#xff0c;或者占用非常大的物理文件系统存储空间的数据库。 -占据TB量级的磁盘存储&#xff0c;包含数十亿表行。为什么需…

php安装pear和phpunit

php安装pear和phpunit http://hi.baidu.com/zjutxujie/item/7b08761f922df7476926bb2c 安装pear 下载go-pear.phar&#xff0c;放到phproot/pear目录下&#xff0c;地址http://pear.php.net/go-pear.phar。 管理员身份运行cmd&#xff0c;打开phproot&#xff0c;运行php -d p…

ResNets和Inception的理解

ResNets和Inception的理解 ResNet解析

软件体系结构风格(第5-8课时)

摘要&#xff1a;本文给出软件体系结构风格的定义&#xff0c;并介绍几种常用风格&#xff1a;管道过滤器、数据抽象和面向对象组织&#xff0c;基于事件的隐式调用&#xff0c;分层系统&#xff0c;仓库系统&#xff0c;过程控制环路 软件体系结构风格是什么 描述特定系统组织…

C#中调用Windows API时的数据类型对应关系

C#中调用Windows API时的数据类型对应关系 原文 C#中调用Windows API时的数据类型对应关系 BOOLSystem.Int32 BOOLEANSystem.Int32 BYTESystem.UInt16 CHARSystem.Int16 COLORREFSystem.UInt32 DWORDSystem.UInt32 DWORD32System.UInt32 DWORD64System.UInt64 …

linux下安装db2

最近研究了一下在 ubuntu下安装db2的过程&#xff0c;很快就完成安装&#xff0c;特贴出来供大家讨论&#xff0c;如有错误请多多指教。 注意&#xff1a;安装过程请使用root用户&#xff0c;否则会出现安装失败的情况&#xff1b; 安装过程&#xff1a; 准备工作&#xff1a; …

使用 SAX 解析器简化文档处理程序的编写

http://www-900.ibm.com/developerWorks/cn/xml/x-dochan.shtml有时候 SAX 文档处理程序的代码可能变得非常麻烦、结构性差而且难以维护&#xff0c;尤其是对于那些包含多种不同元素的复杂 XML 结构。本文介绍了应对这种问题的设计策略&#xff0c;从而有助于改进代码的质量和可…

软件体系结构风格之C/S,三层C/S,与BS

C/S的物理结构&#xff0c;其发展历程为(1)->(3)->(2)&#xff0c;本文接下来要介绍的C/S为(3),即胖客户端瘦服务器,服务器只管数据库&#xff0c;接下来要介绍的三层C/S为(2)&#xff0c;即客户端不胖不瘦。 C/S软件体系结构 背景&#xff1a;基于资源不对等&#xff0…