• 我的爬虫见解


    爬虫

    python:语法简单,数据结构方便,适用于爬虫

    1.找到数据-------------------------html页面抓取
    |
    |
    |-----数据接口抓取(网页xhr中找)

    2.处理数据-------------------------优先通过xpath来找 ,通过lxm中的etree,也可以通过别的工具例如beautifulsoup
    |
    |
    |-----最差情况用正则,可读性低同时开发效率慢。有些数据不规范,不符合文档树结构或者节点标签对不齐。

    3.数据持久化------------------------储存到mysql中,关系型数据库整齐划一
    |
    |
    |-------储存到mongodb中,方便,而且适用于分布式

    4.日志------------------------------线上环境必须打日志,不然出问题不知道哪个环节报错,不能即时修改

    5.框架化-----------------------scrapy,面对整个网站的大型爬虫项目适用,主要使用crawspider,框架的话更将爬虫各部分拆的更细。

    6.效率化--------------------------首先考虑此网站抗压能力,别把网站爬崩是首要
    |
    |
    |----单线程爬虫不设置延时可能被封ip,效率爬虫需要ip池
    |
    |
    |----如果需要更高效率,使用多线程爬虫,对接IP池
    |
    |
    |----如果需要更高效率,使用分布式爬虫,多台服务器更高的硬件性能来爬虫

    5.反爬手段--------------------文字,滑动验证码都可以用库或者本地算法来解决,或者单独写接口来让人来交互(一般次数很少,不然不能自动化),实在不行上selenium(效率低,但是是基于浏览器点击的实现,非必要不使用)

  • 相关阅读:
    [论文笔记]Sentence-BERT[v2]
    【Python3 高级篇】5. subprocess 子进程管理,取代 os.popen()/os.system()
    磐舟CI使用说明及案例
    文件拷贝【 使用字节流完成文件的复制(支持一切文件类型的复制)】
    java基于ssm的汽车维修保养管理系统
    C++ string
    一些常见的排序的集合
    递归组装树结构的数据
    4.2、Linux进程(1)
    python单例模式的使用
  • 原文地址:https://blog.csdn.net/dom_l_z/article/details/125388223