c爬虫抓取网页数据(1.爬虫的流程是怎样的?(一)教程)

优采云 发布时间: 2021-12-07 08:23

  c爬虫抓取网页数据(1.爬虫的流程是怎样的?(一)教程)

  爬虫技术文章很少从整体上讲,这次从宏观的角度讲,希望这篇文章文章能澄清三个问题:

  1. 爬取的过程是什么?

  2. 每道工序都有哪些技术方案?

  3. 你会遇到什么困难?

  所以这个文章也为后面的文章设置了教程的框架。

  1. 爬取的过程是什么?

  爬虫其实很简单,可以分为三个部分:获取网页--->解析网页,提取需要的数据--->存储。在文章:爬行者一号中,我简单地举例说明了每个部分。

  一种。访问页面是什么?

  获取一个网页就是向一个网址发送请求,然后该网址会返回整个网页的数据。类似:你在浏览器中输入网址,回车,然后你就看到了网站的整个页面。

  湾 什么是解析页面?

  解析一个网页就是从整个网页的数据中提取出你想要的数据。类似:你在浏览器中看到了网站的整个页面,但是你想找到产品的价格,而价格就是你想要的数据。

  C。什么是存储?

  存储很简单,就是保存数据。

  2. 三个进程的技术是什么?

  以下技术均在python下,本文不涉及Java

  一种。获取网页:

  要求

  url2 和 url

  模拟浏览器:selenium 或 PhantomJS

  湾 解析网页:

  常规的

  美汤

  C。贮存

  将txt、csv等文件保存到mysql、mongodb等数据库中。

  还有一些爬虫框架,比如Scrapy。在一个框架下解决并完成这三大流程。

  另外,还会有提升爬虫速度的需求,这会涉及到:分布式爬虫。

  3. 每个过程会遇到什么问题?

  一种。获取网页:

  爬虫会自动快速获取网页内容,所以如果短时间内访问过多,网站肯定不会喜欢。所以网站会反爬虫,可以分为:

  增加获取数据难度:登录查看,登录设置验证码

  不返回数据:不返回内容,延迟页面返回时间

  返回数据到非目标页面:返回错误页面,返回空白页面,抓取多个页面时返回同一个页面

  解决这些问题的方法有:使用cookies模拟登录、使用图片识别输入验证码、模拟真实header和切换user-agents、模拟浏览器爬取网站、增加爬网间隔、更改IP、爬取wap或手机客户端等

  所以爬虫是个大坑,慎入。

  湾 解析网页

  解析网页的问题比较少见。主要是:中文乱码。

  C。贮存

  存储也很简单,连接数据库或者本地存储即可。

  总结:获取网页是一个对抗各个公司爬虫的过程。路漫漫其修远兮。我会爬上爬下。祝你好运!请关注我接下来的文章,会一一讲述每一部分的知识。

0 个评论

要回复文章请先登录注册


官方客服QQ群

微信人工客服

QQ人工客服


线