关于爬虫中的URL问题!高手请教

leeking888 2010-10-20 10:18:08
像nutch这样的爬虫 你只要给它一个规则 它就能把站点的所有网页都访问出来 但是这个规则是怎么样定义的呢?
打个比方 http://www.163.com 这个站点 它能把
http://bbs.163.com
http://www.163.com/aaa/aaa.html....等等到
http://www.163.com/1/2/3/4/5/n/nnnn.html 都能挖出来

它的url是怎么样实现的呢?难道是一个一个地穷举配对访问吗??
...全文
181 8 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
eggno8 2010-10-20
  • 打赏
  • 举报
回复
如果你站点上有www.yoursite.com/seegood?id=xxxxxx
这种带参页面,但是,没有任何一个页面有链接连到www.yoursite.com/seegood?id=518518这个页面或者是页面动态形式链接到(比如id=1这个被链接到,然后seegood页面动态的有get到的id+1的链接),那你这个产品页面是不会被爬虫爬到的,爬虫没事会去给你每个参数来个穷举访问么?
leeking888 2010-10-20
  • 打赏
  • 举报
回复
[Quote=引用 5 楼 eggno8 的回复:]
对网站爬行的过程就是一个对图的遍历过程。
每一个页面看作一个顶点,a页面上一个b页面的链接是看作将ab连通的边。对这个图的遍历,如果有某个或者某几个孤立的顶点,那么这个图无法简单的就遍历完。
假设网站www.163.com下有一个页面http://www.163.com/imalone.html
163.com整个站点上其他页面没有任何一个页面上有指向它的链接,那么作为图的顶点,这个页面是孤……
[/Quote]
那么有一些是需要参数的呢?或者是其他条件的才能进入的页面是不是无法爬虫访问到呢?
谁是莫默的呢 2010-10-20
  • 打赏
  • 举报
回复
学习下,期待高手
eggno8 2010-10-20
  • 打赏
  • 举报
回复
对网站爬行的过程就是一个对图的遍历过程。
每一个页面看作一个顶点,a页面上一个b页面的链接是看作将ab连通的边。对这个图的遍历,如果有某个或者某几个孤立的顶点,那么这个图无法简单的就遍历完。
假设网站www.163.com下有一个页面http://www.163.com/imalone.html
163.com整个站点上其他页面没有任何一个页面上有指向它的链接,那么作为图的顶点,这个页面是孤立的,爬虫是爬不到的~
leeking888 2010-10-20
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 metsys 的回复:]
爬的是站点内容里包含的链接。

要是穷举配对,比算出彩票号码的可能性还小得多。
[/Quote]

谢谢 有点想像的可能了..
那么是在http://www.163.com这个页面中的所有 a 标签的链接和 form的链接吗??那要是使用js打开的url呢?
leeking888 2010-10-20
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 yaoweijq 的回复:]
大概意思是这:
用java的httpclient或urlconnection先把
http://www.163.com这个网页的html代码弄出来,
再分析里面所有的链接,
按照一定规则找出来,
与爬过的所有链接进行比较,
如果爬过了并且没有更新,
就不管,
然后爬没爬过的,
依次类推就行了
[/Quote]
请问 按照你这个想法怎么样实现呢??
这网页的根本就没有个规则嘛
有的东西是我喜欢的 或者有的是用户名 时间什么的 如
http://www.163.com/news/20101010/aaa.html
http://www.163.com/news/usernames/includechinese/aaa.html
metsys 2010-10-20
  • 打赏
  • 举报
回复

爬的是站点内容里包含的链接。

要是穷举配对,比算出彩票号码的可能性还小得多。
yaoweijq 2010-10-20
  • 打赏
  • 举报
回复
大概意思是这:
用java的httpclient或urlconnection先把
http://www.163.com这个网页的html代码弄出来,
再分析里面所有的链接,
按照一定规则找出来,
与爬过的所有链接进行比较,
如果爬过了并且没有更新,
就不管,
然后爬没爬过的,
依次类推就行了

81,122

社区成员

发帖
与我相关
我的任务
社区描述
Java Web 开发
社区管理员
  • Web 开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧