美文网首页
2018-01-05

2018-01-05

作者: GryffindorL | 来源:发表于2018-01-05 17:16 被阅读0次

今日学习内容

一、获取初始页面

二、Jsoup模拟浏览器

Document doc = Jsoup.connect(BASE_URL)

.header("Accept_Encoding", "Accept_Encoding")

.header("Accept_Language","Accept_Language")

.header("Host", "Host")

.header("Cookie", "Cookie")

.userAgent(Agent)

.timeout(3000)

.get();

三、初始化三个容器

容器bloomFilter作用:过滤爬取到的网址信息;

容器middleUrl作用:存储过滤之后的中间页面网址信息;

容器finalUrl的作用:存储过滤之后的最终页面网址信息。

四、解析页面,取出所有包含href属性的a标签,放到Elements中。

Elements urls = doc.select("a[href]");

for (int i = 0; i < urls.size(); i++) {

urlFilter(urls.get(i).attr("href"));}

五、遍历Elements取出每一个Element里面href的属性值。

六、处理URL

1、过滤bloomFilter、middleUrl、finalUrl

2、存放到对应的容器内(编写对应的正则表达式,将网址匹配到对应的容器中。正则表达式

七、循环中间页面容器,处理中间界面(重复第6-7步,直到最终页面容器达到要求或网站被全部抓取。)

八、循环最终页面容器,处理最终页面,获取数据。使用JDBC将数据存放到数据库内。

遇到的问题:①正则表达式的学习

                     ②程序运行只返回中间页面信息或最终页面信息

                     ③爬取多次需要注意cookie的更换

相关文章

网友评论

      本文标题:2018-01-05

      本文链接:https://www.haomeiwen.com/subject/fmksnxtx.html