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

做本地化的返利网站怎么样成都网站排名生客seo怎么样

做本地化的返利网站怎么样,成都网站排名生客seo怎么样,网站建设与管理难学吗,spacious wordpress 主题本期学习: 利用网页指纹去重 众所周知,代理是要花钱的,那么在爬取(测试)巨量网页的时候,就不可能对已经爬取过的网站去重复的爬,这样会消耗大量的时间,更重要的是会消耗大量的IP (金…

本期学习: 利用网页指纹去重

众所周知,代理是要花钱的,那么在爬取(测试)巨量网页的时候,就不可能对已经爬取过的网站去重复的爬,这样会消耗大量的时间,更重要的是会消耗大量的IP (=金钱 💵)

1 指纹机制

所谓指纹,就是把网页的数据生成一个唯一性的数据,相当于程序给每个网页留了个痕迹,爬取过的网页,留下指纹,那下次只要比对一下我们指纹库:有的,就直接跳过,那就不存在重复爬取的问题了;没有的,爬取数据,留下指纹。这个机制非常适合我们这个使用了selenium来进行翻页的scrapy工程。

2 指纹实现

首先在爬虫初始化__init__的时候增加一个指纹文件:

        self.fp_file = 'fingerprints.json'

然后在 start_requests 判断这个文件是否存在,不存在的话需要创建,注意到以列表形式存储:

      	#创建指纹存储文件if not os.path.exists(self.fp_file):with open(self.fp_file, 'w') as f:json.dump([], f)

然后实现指纹的3个方法

    # 生成指纹def get_fingerprint(self, page_content):return md5(page_content.encode('utf-8')).hexdigest()# 判断指纹是否存在def fingerprint_exists(self, fingerprint):with open(self.fp_file, 'r') as f:fingerprints = json.load(f)return fingerprint in fingerprints# 保存指纹def save_fingerprint(self, fingerprint):with open(self.fp_file, 'r+') as f:fingerprints = json.load(f)fingerprints.append(fingerprint)f.seek(0)json.dump(fingerprints, f)f.truncate()

最后一步,添加到爬取的逻辑中,这边尝试添加在parse_page (不清楚的话需要回看前几期的博客文章)

        # 生成指纹fingerprint = self.get_fingerprint(page_source)# 判断指纹是否存在if self.fingerprint_exists(fingerprint):self.logger.info('指纹已存在,跳过 %s', fingerprint)return# 保存指纹self.save_fingerprint(fingerprint)

3 测试

测试的时候先爬去一下,检查下fingerprints.json是否生成了,然后等待爬虫爬取一段时间,看json文件中指纹数据是否有增加,然后停止爬虫,重新开始,测试指纹能否帮助跳过已经爬取过的页面。

测试截图如下,发现可以生效的。如果不跳过,则item代码会去比较数据库中是否存在这个评论,这里却没有这个过程,说明通过指纹对比,把已经爬取过的页面跳过了

在这里插入图片描述

http://www.hotlads.com/news/2360.html

相关文章:

  • 阿里云网站建设步骤推广技巧
  • 广告标识标牌制作公司seo诊断工具网站
  • 如何免费建购物网站软文广告经典案例100字
  • 上海静安网站制作活动推广朋友圈文案
  • web2.0网站开发a内容seo好seo
  • 免费dede企业网站模板网盘资源搜索神器
  • 合肥建筑网站大全百度搜索推广费用
  • 网站开发在家工作浏阳廖主任打人
  • 贵州企业网站建设招商网站seo怎么操作
  • 做网站会犯法吗广告优化师前景怎样
  • 网站建设营销词重庆seo代理计费
  • 龙岩互联网武汉seo价格
  • 哪个公司网站做的好杭州网站排名提升
  • 网站服务器计算机安全的措施热搜词排行榜关键词
  • 佛山知名营销网站开发网站关键词优化培训
  • 建网站需要什么手续网络推广价格
  • 日本韩国澳大利亚出线排名优化网站
  • 长春网站制作可选源晟4建网站怎么赚钱
  • 哪些网站可宣传如何做品牌宣传与推广
  • 什么样的网站适合推广百度网盘网页版入口官网
  • 做注册任务网站源码网址查询工具
  • 中兴建设有限公司网站seo网站优化培训
  • 做购物网站是怎么连接银行优化设计五年级下册数学答案
  • b2c网站的网址有哪些慧达seo免登录发布
  • 找人做网站 源码被盗用关键词查询网站的工具
  • 怎么用动图做网站背景网站建设公司网站
  • wordpress建站需要写代码吗在线识别图片来源
  • 做网站和做电脑软件差别大吗扬州seo优化
  • 凡客建站登录入口产品seo是什么意思
  • 业网站建设百度搜索引擎的网址