c爬虫抓取网页数据(模拟浏览器发送请求,获取服务器响应的文件3、解析)

优采云 发布时间: 2021-10-14 11:28

  c爬虫抓取网页数据(模拟浏览器发送请求,获取服务器响应的文件3、解析)

  b) 处理后的请求可以模拟浏览器发送的请求,获取服务器响应的文件

  3、 解析服务器响应内容

  a) re, xpath, beautifulSoup4(bs4), jsonpath, pyquery

  b) 使用某种描述语言为我们需要提取的数据定义一个匹配规则,符合这个规则的数据就会匹配

  4、如何处理采集动态HTML和验证码

  a) 通用动态页面采集,Selenium+Phantomjs(无接口):模拟真实浏览器加载js,Ajax非静态页面数据

  b) tesseract:机器学习库,机器图像识别系统,可以处理简单的验证码,复杂的验证码可以手动输入,编码平台

  5、 Scrapy 框架(Scrapy、Pyspider)

  高定制和高性能(异步网络框架扭曲),所以数据下载速度非常快,提供数据存储、数据下载、提取规则等组件

  6、 分布式策略:

  a)scrapy redis,在scrapy的基础上,增加了一套以redis数据库为核心的组件

  b) 功能:主要做请求指纹去重、请求分发、数据在redis中的临时存储

  7、 爬虫、反爬虫、反爬虫斗争:

  a) 爬虫最头疼的不是复杂的页面,而是网站背后的另一个人

  反爬虫:用户代理、代理、验证码、动态数据加载、加密数据

  反爬虫主要看数据的价值,做反爬虫是否值得

  主要考虑以下几个方面:机器成本+人工成本“数据价值,倒也不是,一般IP封堵结束

  通用爬虫专注爬虫

  1、万能爬虫:搜索引擎的爬虫系统

  -1 目的:尽可能下载互联网上所有的网页,放到本地服务器上形成备份,然后对这些网页进行相应的处理(提取关键词,去除广告),最后提供一个借口要登录的用户

  -2 抓取过程:

  一种。优先选择一部分已有的网址,将这些网址放入待抓取的队列中

  湾 从队列中取出这些URL,然后解析DNS得到主机IP,然后去这个IP对应的服务器下载HTML页面,保存到搜索引擎对应的服务器,然后把爬取到的URL进入抓取队列

  C。分析这些网页的内容,找出网页中的其他网址链接,继续执行第二部分,直到爬虫条件结束

  -3、搜索引擎如何获取新的网站 URL?

  1、 主动提交网址给搜索引擎(百度连接提交)

  2、在其他网站中设置外部链接:

  3、搜索引擎会与DNS服务商合作,可以快速收录new网站

  DNS:是一种将域名解析为IP的技术

  -4、万能爬虫不是万能的,也需要遵守规则

  机器人协议:协议会规定一般爬虫爬取网页的权限

  Robots.txt 只是一个建议,不是所有爬虫都关注,只有大型搜索引擎爬虫需要关注

  -5 一般爬虫工作流程:抓取网页、存储数据、内容处理、提供索引/排名服务

  -6、搜索引擎排名:

  一种。PageRank:根据网站流量统计(点击量/浏览量/流行度),流量越高

  湾 竞价排名:谁出的钱越多,谁的排名就越高

  -7、 一般爬虫的缺点:

  1、 只能提供文本相关内容(HTML\WORD\PDF)等,不能提供多媒体、二进制

  2、 上一篇提供的结果都是一样的,不要等不同背景的人提供不同的搜索结果

  3、无法理解人类语义的检索

  为了解决这个问题,出现了聚焦爬虫:

  专注于爬虫:爬虫程序员针对某个内容编写的爬虫

  面向主题的爬虫,面向需求的爬虫:会针对特定的内容爬取信息,并且会尽可能保证信息和需求的相关性

0 个评论

要回复文章请先登录注册


官方客服QQ群

微信人工客服

QQ人工客服


线