首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Python之由公司名推算出公司官网

读大学时期写的博文

1.问题

对展会数据分类后,我的新任务是如何通过 等海关数据推断出该公司的官网网站(若官网不存在则不考虑) 以下数据仅供参考:

需要得到结果:

2.解决

由数据可看出,公司名是绝对存在的,故解决思路是从公司名出发,而不怎么全面的国家以及地址信息则用来提高准确度。

大体思路是这样的,若公司官网存在,那么通过搜索引擎定会被检索到,搜索引擎自然首选 ,所以可以先通过获取谷歌搜索的结果,然后分析获取的结果,从而得出最可能是该公司网站的 。 初步搜索一下,看看各种情况:

第一种情况,检索即可很直观地得出结果

第二种情况,检索不能直观地得出结果,但官网确实存在(第二检索个结果)

第三种情况,输入公司名+公司地址和只输入公司名得出的结果不一样

对于第三种情况,可以看出输入公司名+公司地址得出的结果是绝对正确的。

观察第三种情况,当输入公司名+公司地址时,返回结果的右侧会出现公司的详细信息,经过验证,若出现这种情况,则其 对应的 绝对正确。

故代码的第一步骤可以首先检索公司名+公司地址,观察 元素是否存在,若存在,返回公司官网,否则,对公司名进行检索,代码如下:

能直接获取公司官网毕竟是少数,大多数据还是要通过一步步计算得出,主要经过以下步骤:

获取搜索引擎检索结果提取url

初步排除某些url

余弦相似度计算最可能的结果

2.1.获取搜索引擎检索结果提取url

对于谷歌搜索,我使用了 的项目google,毕竟在国内,为了以防万一我也写了 搜索,代码如下:

2.2.初步排除某些url

这个可根据个人需求来配置,可添加 脚本,排除某些 :

以公司名 为例,初步获取url:

2.3.余弦相似度计算最可能的结果

对于公司 ,我们获得了三个结果,现在又该如何从该列表中取得最可能的结果呢。

这里可以采用余弦相似度,具体公式可google,稍稍解释下,对于这三个网站:

2.3.2:构建单词向量

2.3.3:计算余弦相似度

通过比较,可以看到 相似度最高的结果,跟真实结果一样。

全部步骤代码如下:

计算余弦相似度代码

3.总结

至此,若有更好的解决方案,欢迎赐教,谢谢。

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20181227G098V600?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券