01-爬虫的介绍

网络爬虫是自动化采集大量网页数据的程序,常用于市场分析、舆情监控和产品发展。Python因其易学性和丰富的库成为爬虫开发的首选语言。爬虫需遵循合法性和不干扰网站正常运行的原则,同时面对反爬虫技术,如请求限制、IP封锁和验证码。理解爬虫的基本流程、数据解析和反反爬策略是开发高效爬虫的关键。
摘要由CSDN通过智能技术生成

爬虫的介绍

  1. 什么是爬虫

    网络爬虫也叫网络蜘蛛,指的是在互联网上像蜘蛛一样在各个网站上采集数据的网络程序。

  2. 有什么作用

    通过有效的爬虫手段批量采集数据,可以降低人工成本,提高有效数据量,给予运营/销售的数据支持,加快产品发展。

  3. 应用领域

    • 批量采集某个领域的招聘数据,对某个行业的招聘情况进行分析
    • 批量采集某个行业的电商数据,以分析出具体热销商品,进行南业决策,采集目标客户敌据,以进行后续营销
    • 批量爬取腾讯动漫的漫画,以实现脱网本地集中浏览
    • 开发一款火车票抢票程序,以实现自动抢票
    • 取评论,舆情监控
    • 爬取说说信息,分析上线时间
  4. 业界情况

    目前互联网产品竞争激烈,业界大部分都会使用爬虫技术对竟品产品的数据进行挖烟、采集、大数据分析,这是必备手段,并目很多公司都设立了爬虫工程师的岗位

  5. 合法性

    • 爬虫是利用程序进行批量爬取网页上的公开信息,也就是前端显示的数据信息,因为信息是完全公开的,所以是合法的。
    • 其实就像刻览器一样,浏览器解析响应内容并渲染为页面,而爬虫解析响应内容采集想要的数据进行存储.
    • 但民间流传出下面一段话:
      爬虫爬得欢,监狱要坐穿:数据玩的遛,牢饭吃个够.
    • 要点:不影响到网站的正常业务,如果推广或商用要保证不损害网站的利益.
  6. 反爬虫
    爬虫很难完全的制止,道高一尺魔高一丈,这是一场没有硝烟的战争,码农VS码农
    反爬虫的一些手段

    • 合法检测:请求校验(UserAgent,Referer,接口加签名等)
    • 小黑屋:IP/用户限制请求频率,或直接栏截
    • 投毒:反爬虫高境界可以不用栏藏,拦截是一时的,投毒返回虚假数据,可以误导竞品决策
  7. 选择一门语言

    • 只要能发送网络请求的语言都可以开发网络爬虫
    • 比如c,c++,java,python… 而我以下的笔记都是基于Python而写的,但是对于爬虫而言,一些知识也是共通的.
  8. 爬虫的基本套路

    • 基本流程

      • 目标数据

      • 来源地址

      • 结构分析

        • 具体数据在哪(网站、还是APP)
        • 如何展示的数据
      • 实现构思

      • 操刀编码

    • 基本手段

      • 破解请求限制

        • 请求头设置,如:UserAgent为有效客户端

        • 控制请求频率(根据实际情景)

        • IP代理

        • 签名/加密参数从html/cookie/is分析

        • 破解登录授权

          • 请求带上用户cookie信息
        • 破解验证码

          • 简单的验证码可以使用识图读验证码第三方库
    • 解析数据

      • HTML Dom解析
        • 正则匹配,通过的正则表达式来匹配想要爬取的数据,如:有些数据不是在html标签里,而是在html的script标签的js变量中
        • 使用第二方库解析html dom,比较喜欢类iquery的库
      • 数据字符串
        • 正则匹配根据情景使用
        • 转JSON/XML对象进行解析
  9. python爬虫

    • python写爬虫的优势
      • python语法易学,容易上手
      • 社区活跃,实现方案多可参考
      • 各种功能包丰富
      • 少量代码即可完成强大功能
    • 涉及模块包
      • 请求
        • urllib
        • requests
      • 多线程
        • threading
      • 正则
        • re
      • json解析
        • json
      • html dom解析
      • beautiful soup
      • lxml
      • xpath
      • 操作浏览器
        • selenium
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值