读大学时期写的博文
1.问题
对展会数据分类后,我的新任务是如何通过 等海关数据推断出该公司的官网网站(若官网不存在则不考虑) 以下数据仅供参考:
需要得到结果:
2.解决
由数据可看出,公司名是绝对存在的,故解决思路是从公司名出发,而不怎么全面的国家以及地址信息则用来提高准确度。
大体思路是这样的,若公司官网存在,那么通过搜索引擎定会被检索到,搜索引擎自然首选 ,所以可以先通过获取谷歌搜索的结果,然后分析获取的结果,从而得出最可能是该公司网站的 。 初步搜索一下,看看各种情况:
第一种情况,检索即可很直观地得出结果
第二种情况,检索不能直观地得出结果,但官网确实存在(第二检索个结果)
第三种情况,输入公司名+公司地址和只输入公司名得出的结果不一样
对于第三种情况,可以看出输入公司名+公司地址得出的结果是绝对正确的。
观察第三种情况,当输入公司名+公司地址时,返回结果的右侧会出现公司的详细信息,经过验证,若出现这种情况,则其 对应的 绝对正确。
故代码的第一步骤可以首先检索公司名+公司地址,观察 元素是否存在,若存在,返回公司官网,否则,对公司名进行检索,代码如下:
能直接获取公司官网毕竟是少数,大多数据还是要通过一步步计算得出,主要经过以下步骤:
获取搜索引擎检索结果提取url
初步排除某些url
余弦相似度计算最可能的结果
2.1.获取搜索引擎检索结果提取url
对于谷歌搜索,我使用了 的项目google,毕竟在国内,为了以防万一我也写了 搜索,代码如下:
2.2.初步排除某些url
这个可根据个人需求来配置,可添加 脚本,排除某些 :
以公司名 为例,初步获取url:
2.3.余弦相似度计算最可能的结果
对于公司 ,我们获得了三个结果,现在又该如何从该列表中取得最可能的结果呢。
这里可以采用余弦相似度,具体公式可google,稍稍解释下,对于这三个网站:
2.3.2:构建单词向量
2.3.3:计算余弦相似度
通过比较,可以看到 相似度最高的结果,跟真实结果一样。
全部步骤代码如下:
计算余弦相似度代码
3.总结
至此,若有更好的解决方案,欢迎赐教,谢谢。
领取专属 10元无门槛券
私享最新 技术干货