首页 > 编程知识 正文

python爬虫开发从入门到实战pdf,简单java爬虫项目

时间:2023-05-03 11:23:43 阅读:59778 作者:575

web爬虫(也称为web蜘蛛、web机器人,在FOAF社区中间,经常被称为web跟踪者) )是根据一定规则自动抓取web信息的程序或脚本。 此外,不常用的名称包括蚂蚁、自动索引、模拟程序和蠕虫。 ——百度百科

爬行动物的基本操作其实是分析静态页面,获得有价值的信息。 当前网页一般为Html格式。 当然,http请求也返回xml、json等数据格式。 入门篇以html为例。

分析需求

我打算在链家网上获取北京某小区的房价信息,每天爬一次。 如果有房价信息更新,或者有新房,就在日志文件上打log。

步骤

获取单元格页面html-分析页面元素-获取有用信息-与现有房价信息进行匹配日志

获取网页

在本例中,您将使用java附带的http客户端发送http请求并通过字符串访问。

公共字符串http get (字符串URL ) )。

{

字符串结果=' ';

缓冲读取程序in=null;

try {

URLrealurl=newURL(URL;

system.out.println (realurl 'n ' URL;

URL connection=realurl.open connection (;

urlConnection.connect (;

in=newbufferedreader (newinputstreamreader (URL connection.get inputstream () );

系统. out.println (URL connection.get header fields () );

字符串线;

while((line=in.readline ) )!=空) {

结果=line;

}

}catch(exceptione ) {

system.out.println('get请求发送异常!' e;

e .打印堆栈跟踪(;

} finally {

try{

if (入!=空) {

in.close (;

}

}catch(exceptionE2) {

E2 .打印堆栈跟踪(;

}

}

返回结果;

}

分析网页元素

打开网页检查元素就可以了。 一般的浏览器都有匹配。 慢慢往下找,就可以找到houselist,如下图所示。 所以我需要的信息都在这里面。

链网站页面元素分析

查看每个item的信息,找出您感兴趣的几个元素,title、price等。

各家信息

获取有用的信息

然后,从http请求返回的字符串中找到合适的信息。 用正则表达式匹配是个不错的选择。 其中的)包含的表示我们感兴趣的元素,最后的正则表达式如下。

//房地产数据正常匹配

publicstaticfinalstringhouseinfoexpression=' data-index=' () . //标签

' data-id=" (? 33.*? //数据id

'

() . () ) 0,).*? //title 'region . () . ()、)。

' meters . () . ()、)。

' price . num . () . *?' //价格

' price-pre . () . )

';//每平方米的价格

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。