2013-06-21 135 views
0

我向我的网站展示大量产品。 我必须将来自不同网站的类似产品分组, 我已经抓取到我的数据库。 因此,当搜索产品时,它也会显示来自其他网站的同一产品。分组产品相同但名称/属性略有不同

我尝试以下方法

  1. 分组通过产品名称

    结果 - 失败,因为索尼的Xperia Z,索尼的Xperia Z(黑色)是相同的产品,但不同的标题,所以不能在同组,所以错误率很高。

  2. 分组由属性:

    具有类似属性和值的产品被放置在一组。 但它非常慢,错误率也很高。 由于不同公司的不同产品可能具有相同的属性。

这是最好的方法。 请帮我一把。

在此先感谢。谢谢糟糕的英语。

+0

你说你认为XperiaZ和XperiaZ(黑色)是同样的产品吗?它不应该是一个属性? – Fabinout

+0

@Fabinout:没有,只是按标题分组。如果按照标题名称分组,则它们将属于不同类别。 – vickydon

回答

0

我试着使用标题分组解决方案,但使用RegEx进行了修改。或者只是使用类似的方法:

title1.contains(title2)

title1.startsWith(title2)

不可能有100%的无差错的解决方案,所以我想补充一个像这样的链接: “?不是你的产品KLICK这里” 要从该组中暂时删除产品并将其标记为“不确定”,以便您可以手动进行检查。

+0

用RegEx修改后,你能举个例子吗? – vickydon

0

您可以使用第一个字母和一个字典,然后使用mysql全文搜索和按相关性排序。这个问题不是很清楚。还有levensthein距离和soundex()函数。

相关问题