• 爬虫入门学习综述


    什么是爬虫?

    网络爬虫(又被称为网页蜘蛛,网络机器人,在FOAF社区中间,更经常的称为网页追逐者),是一种按照一定的规则,自动的抓取万维网信息的程序或者脚本。

    必备知识

    根据我的经验,要学习Python爬虫,我们要学习的共有以下几点:

    • Python基础知识
    • Python中requests
    • Python正则表达式
    • Python爬虫框架Scrapy
    • Python爬虫更高级的功能

    1.python基础学习

    列表list,字典dist,循环,判断

    2.Python中requests

    利用这个库我们可以得到网页的内容,并对内容用正则表达式提取分析,得到我们想要的结果。

    3.python正则表达式

    Python正则表达式是一种用来匹配字符串的强有力的武器。它的设计思想是用一种描述性的语言来给字符串定义一个规则,凡是符合规则的字符串,我们就认为它“匹配”了,否则,该字符串就是不合法的。这个在后面的博文会分享的。

    4.Python爬虫框架Scrapy

    如果你是一个Python高手,基本的爬虫知识都已经掌握了,那么就寻觅一下Python框架吧,我选择的框架是Scrapy框架。这个框架有什么强大的功能呢?下面是它的官方介绍:

    HTML, XML源数据 选择及提取 的内置支持
    提供了一系列在spider之间共享的可复用的过滤器(即 Item Loaders),对智能处理爬取数据提供了内置支持。
    通过 feed导出 提供了多格式(JSON、CSV、XML),多存储后端(FTP、S3、本地文件系统)的内置支持
    提供了media pipeline,可以 自动下载 爬取到的数据中的图片(或者其他资源)。
    高扩展性。您可以通过使用 signals ,设计好的API(中间件, extensions, pipelines)来定制实现您的功能。
    内置的中间件及扩展为下列功能提供了支持:
    cookies and session 处理
    HTTP 压缩
    HTTP 认证
    HTTP 缓存
    user-agent模拟
    robots.txt
    爬取深度限制
    针对非英语语系中不标准或者错误的编码声明, 提供了自动检测以及健壮的编码支持。
    支持根据模板生成爬虫。在加速爬虫创建的同时,保持在大型项目中的代码更为一致。详细内容请参阅 genspider 命令。
    针对多爬虫下性能评估、失败检测,提供了可扩展的 状态收集工具 。
    提供 交互式shell终端 , 为您测试XPath表达式,编写和调试爬虫提供了极大的方便
    提供 System service, 简化在生产环境的部署及运行
    内置 Web service, 使您可以监视及控制您的机器
    内置 Telnet终端 ,通过在Scrapy进程中钩入Python终端,使您可以查看并且调试爬虫
    Logging 为您在爬取过程中捕捉错误提供了方便
    支持 Sitemaps 爬取
    具有缓存的DNS解析器

  • 相关阅读:
    软件项目成员的业绩考核
    COM, COM+ and .NET 程序集的区别
    .Net 应用框架设计系列(二)
    怎样在Web开发中完美控制IE标题栏
    影楼系统
    PHP读取ACCESS数据到MYSQL
    简单分享apache 封 IP 的方法
    详解Apache下.htaccess文件常用配置
    fleaphp常用方法分页之Pager
    php遍历文件夹读取文件夹中图片并分页显示图片
  • 原文地址:https://www.cnblogs.com/zhifeiji822/p/11981162.html
Copyright © 2020-2023  润新知