关于估价函数的实现-------基于python语言(网络爬虫)

    估价函数是一个对特定链接进行评价的函数,符合相关规则的,进行权值的增加。而规则怎么定?权值加多少?这又是我们要讨论的问题。根据那篇论文,我们可以知道规则不过为对链接本身以及对链接文本中存在的链接的规则。对于链接本身我们应该判断这个链接在不在门户网站的范围内,而门户网站当然是事先放在缓冲区里面了。假如在缓冲区里面找不到,我们就访问该链接文本里面的外部链接,然后判断这些链接有没有我们要的目标网站的关键字,有则原始链接的权值加10,没有则不加。假如在缓冲区里面找到了,则我们就访问该链接文本里面的内部链接,访问到的链接里面有关键字,则原始链接权值加20,没有则不加。至于判断某个链接是否为外部链接或内部链接,我们可以通过连接上面的域名判断,即从原始链接中提取该链接的特有域名,假如提取失败则直接过滤该链接。

     现在大概说一下用python实现的方式,首先用字典这一数据结构来存储网址,其中dict[Url]=key,Url是链接,而key是链接对应的权值。先用python定义一个函数,

def GetDomain(Url):                   #获取链接的域名

     First=Url.find('/')

     First=First+2

     Second=Url.find('/',First)

     Third=Url.find('.')

     Third=Third+1

     Result=Url[Third:Second]

     return Result

 

def JudgeUrl(OriginalUrl,NowUrl):                       #判断该链接上是否存在原始链接的域名

     Result=GetDomain(OriginalUrl)

     num=NowUrl.find(Result,0)

     if num==-1:

          print  "该链接不属于内部链接。"

          return 0                                               #不存在返回0

     return 1                                                    #存在返回1

 

def JudgeKeyWords(Url,KeyWords):

     for Sublist in KeyWords:

            num=Url.find(KeyWords)

            if not num==-1:

                 print   "该链接存在关键字。"

                 return 1                                       #存在返回1

     return 0                                                   #不存在返回0

 

通过以上三个函数分别提取域名,判断域名,判断关键字,基本上已经实现估价函数的基本流程。最后只需将符合要求的链接放到字典里面去,再进行排序,我们就能按权值的大小顺序访问相应的链接,实现以最快的速度访问到我们想要的网站。

 

 

 

    

     

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值