新闻抓取爬虫 PPT

不用多言,请见附件 :)

上slideshare view -> [url]http://www.slideshare.net/edisonlz/ppt-4395676[/url]

补充,不使用分词的,很简单,但效果一般的排重算法如下:


#encoding = utf8
import re
import sys,os
import re

chars = []
def generate_chars(strList):
"""
创建字典
"""
for sr in strList:
for char in sr:
if char not in chars:
chars.append(char)


def vector(sr):
"""
将字符串转换为向量空间
"""
vec = []
for char in chars:
if sr.find(char) !=-1:
vec.append(1)
else:
vec.append(0)
return vec

def intersaction(str1,str2):
"""
计算交集
"""
v1 =vector(str1)
v2= vector(str2)
rv = 0
for i in xrange(len(v1)):
rv += v1[i] * v2[i]
return rv

def detect_repeat(strList):
"""
检测字符串字符匹配
"""
chars = generate_chars(strList)

#临界值
critical = 3
results = []
for st in strList:
if all(intersaction(st,rt) < critical for rt in results):
results.append(st)

#返回检测结果
return results


if __name__ =="__main__":
strLists = [u"大家好啊",u"大家好",u"张靓颖新专辑",u"张靓颖专辑"]
results = detect_repeat(strLists)
print "result " + " > " * 20
for ru in results:
print ru.encode("utf-8")


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值