当前位置: 首页 > news >正文

中国网站设计公司网站形式的设计

中国网站设计公司,网站形式的设计,wordpress兼容php版本,域名邮箱申请去重基本原理 爬虫中什么业务需要使用去重 防止发出重复的请求防止存储重复的数据 在爬取网页数据时#xff0c;避免对同一URL发起重复的请求#xff0c;这样可以减少不必要的网络流量和服务器压力#xff0c;提高爬虫的效率#xff0c;在将爬取到的数据存储到数据库或其…去重基本原理 爬虫中什么业务需要使用去重 防止发出重复的请求防止存储重复的数据 在爬取网页数据时避免对同一URL发起重复的请求这样可以减少不必要的网络流量和服务器压力提高爬虫的效率在将爬取到的数据存储到数据库或其他存储系统之前去除重复的数据条目确保数据的唯一性和准确性。它不仅关系到数据的质量也影响着爬虫的性能和效率。 根据给定的判断依据和给定的去重容器将原始数据逐一进行判断判断去重容器中是否有该数据。如果没有那就把该数据对应的判断依据添加去重容器中同时标记该数据是不重复数据如果有就不添加同时标记该数据是重复数据。  临时去重容器指如利用list、set等编程语言的数据结构存储去重数据一旦程序关闭或重启后去重容器中的数据就被回收了。使用与实现简单方便但无法共享、无法持久化 持久化去重容器指如利用redis、mysql等数据库存储去重数据。 在爬虫中进行去重处理可以使用信息摘要算法如MD5、SHA1等来实现。以下是一个简单的Python示例使用MD5进行去重 信息摘要hash算法 import hashlibdef md5_hash(text):md5 hashlib.md5()md5.update(text.encode(utf-8))return md5.hexdigest()def remove_duplicates(data_list):unique_list []seen_hashes set()for data in data_list:hash_value md5_hash(data)if hash_value not in seen_hashes:seen_hashes.add(hash_value)unique_list.append(data)return unique_listdata_list [苹果, 香蕉, 橙子, 苹果, 橙子] unique_list remove_duplicates(data_list) print(unique_list) 在这个示例中我们首先定义了一个md5_hash函数用于计算给定文本的MD5哈希值。然后我们定义了一个remove_duplicates函数该函数接受一个数据列表并使用一个集合seen_hashes来存储已经遇到的哈希值。对于列表中的每个数据项我们计算其哈希值如果该哈希值尚未出现在seen_hashes集合中我们将其添加到集合中并将数据项添加到结果列表unique_list中。最后我们返回去重后的结果列表。 信息摘要hash算法指可以将任意长度的文本、字节数据通过一个算法得到一个固定长度的文本。 如MD5(128位)、SHA1(160位)等。摘要算法主要用于比对信息源是否一致因为只要源发生变化得到的摘要必然不同而且通常结果要比源短很多。  基于simhash算法的去重  Simhash算法是一种用于文本相似度计算的哈希算法可以用于去重处理。Simhash算法是一种局部敏感哈希算法能实现相似文本内容的去重。 import jieba from simhash import Simhashdef remove_duplicates(data_list):unique_list []seen_hashes set()for data in data_list:words jieba.cut(data)simhash_value Simhash( .join(words)).valueif simhash_value not in seen_hashes:seen_hashes.add(simhash_value)unique_list.append(data)return unique_listdata_list [苹果, 香蕉, 橙子, 苹果, 橙子] unique_list remove_duplicates(data_list) print(unique_list) 我们首先导入了jieba库用于中文分词和simhash库用于计算Simhash值。然后我们定义了一个remove_duplicates函数该函数接受一个数据列表并使用一个集合seen_hashes来存储已经遇到的Simhash值。对于列表中的每个数据项我们使用jieba库进行分词然后计算其Simhash值。如果该Simhash值尚未出现在seen_hashes集合中我们将其添加到集合中并将数据项添加到结果列表unique_list中。最后我们返回去重后的结果列表。 Simhash的特征 信息摘要算法如果原始内容只相差一个字节所产生的签名也很可能差别很大。 Simhash算法如果原始内容只相差一个字节所产生的签名差别非常小。  布隆过滤器 布隆过滤器是一种空间效率极高的概率型数据结构用于判断一个元素是否可能在集合中。 网络爬虫 网络爬虫在爬取网页数据时需要避免爬取相同的URL地址。布隆过滤器可以用于存储已经访问过的URL从而快速判断一个新的URL是否已经被爬取过提高爬虫的效率。 反垃圾邮件在反垃圾邮件系统中布隆过滤器可以帮助快速判断一封邮件是否可能是垃圾邮件。通过将已知的垃圾邮件特征存储在布隆过滤器中系统可以在数十亿个邮件列表中迅速识别出可能的垃圾邮件。 Web拦截器在网络安全领域布隆过滤器可以用作WEB拦截器快速检查并拦截重复的恶意请求防止网站被重复攻击。 位数组初始化布隆过滤器首先维护一个bitArray位数组在初始状态下所有数据都置为0。使用多个哈希函数当一个元素加入布隆过滤器时会通过K个不同的哈希函数计算出K个哈希值这些值对应到位数组中的K个位置并将这些位置的值置为1。误判率与数组大小布隆过滤器存在一定的误判率即可能会将不属于集合的元素误判为属于集合。降低误判率通常需要增大位数组的大小。查询操作进行查询时同样使用那K个哈希函数计算待查询元素的哈希值并检查位数组中对应的K个位置是否都为1。如果是则认为元素可能在集合中如果任一位不为1则元素肯定不在集合中。添加操作向布隆过滤器中添加元素时按照上述方法设置位数组中的相应位为1。由于位被设置为1后不会再变回0所以布隆过滤器不支持删除操作。实际应用布隆过滤器常用于判断一个元素是否可能已经存在于一个大规模数据集中例如网络爬虫中用于过滤已访问过的URL等场景。性能优势布隆过滤器的主要优点是空间效率和查询速度快但它的缺点是不能保证100%的准确性且无法删除元素。优化措施为了减少误判率可以采用增加位数组大小、使用更多或更强的哈希函数等策略。同时可以通过计数布隆过滤器等变种来支持元素的删除操作。 布隆过滤器是一种以空间换取时间效率的数据结构适用于那些可以接受一定误判率但需要快速判断元素是否存在的场景。在设计布隆过滤器时需要根据实际应用场景和可接受的误判率来选择合适的位数组大小和哈希函数数量。 我的博客即将同步至腾讯云开发者社区邀请大家一同入驻https://cloud.tencent.com/developer/support-plan?invite_code1x4tmatnj0ypv
http://www.w-s-a.com/news/852118/

相关文章:

  • 手机网站 多html中国建设银行网站包头分行
  • 哪个网站做免费广告好招牌图片效果图设计制作
  • 网站建设优化服务机构苏州市做网站
  • 网站如何优化流程企业网站管理系统视频教程
  • 我想克隆个网站 怎么做贵州住房和城乡建设厅官网
  • 网站建设项目前景上海今天新闻综合频道
  • 做网站推销的如何谈客户wordpress怎么做商城
  • 摄影素材库网站服装页面设计的网站
  • 如何用国外网站做头条做个游戏app的费用大概多少
  • 网站 形象入口页福州网站建设网络公司排名
  • 免费下载教学设计的网站送网站建设管理信息内容审核制度
  • 外贸专业网站的公司百度旗下13个app
  • 物理组简介 网站建设高师院校语言类课程体系改革与建设 教学成果奖申报网站
  • 爱网站无法登录怎么回事手表网
  • 网站建设公司现在还挣钱吗山西手动网站建设推荐平台
  • 重庆建设工程交易信息网站网站制作公司起名
  • 东莞寮步做网站的有吗企业宣传册制作
  • 做网站的软件是哪个上蔡做网站
  • 前后端分离实现网站开发紧急通知网页升级
  • 河北专业网站建设公司推荐佛山小程序开发平台
  • 网站开发强制开启浏览器极速模式建设网站有什么风险
  • 360全景网站建设常州专业网站建设公司咨询
  • 重庆大渡口网站建设网站增加一体化建设功能的好处
  • 网站开发完整视频网站上传 404
  • 自适应网站做推广北京建设工程招标网
  • 外贸网站设计注意事项网上商城官网入口
  • 正规的营销型网站建设公司微官网是网站吗
  • 南京行业门户网站无锡阿里巴巴做网站
  • 河北省和城乡住房建设厅网站wamp wordpress打不开
  • 在哪个平台做网站比较好自动app优化