在开发爬虫的过程中会解析出Url地址,因为不同网站的不同风格,这些Url有些是相对路径,有些是绝对路径,有些是广告链接。
我们需要统一处理这些新的额Url
1.过滤Url
假如我们想只采集一个网站的信息,就需要把和这个网站有关的Url放入queue
一般的方法是Regex
根据网站Url的特点编写,逐一匹配过滤Url。
2.相对地址转绝对地址
有些网站的Url采用相对地址,有些是绝对地址,绝对地址可以直接放入queue,相对地址需要解析出之后转换成绝对地址,还有些网站会两种Url都存在,这需要我们判断转化。
根据上边思路,还可以用正则表达式,这里另一种方法,Java.net
中有两个类,URI\URL
我们可以使用URL去处理网页地址,比直接采用String要方便些,URI中有一个判断绝对路径和相对路径的方法
isAbsolute
public boolean isAbsolute()判断此 URI 是否为绝对的。
当且仅当 URI 具有方案组成部分时,它才是绝对的。返回:
当且仅当此 URI 是绝对的,才返回 true