首页 > 编程语言 >无涯教程-Python爬虫 - 简介

无涯教程-Python爬虫 - 简介

时间:2023-11-29 20:31:38浏览次数:46  
标签:Web 提取 Python 抓取 无涯 模块 爬虫 数据

Web抓取是从Web提取信息的自动过程,本章将为您提供有关Web抓取的深入概念,它与Web抓取的比较以及为什么要选择Web抓取。

网页抓取

字典中" Scrapping"一词的含义表示可以从网络中获取某些东西,这里出现两个问题:无涯教程可以从网上获得什么以及如何获得它。

第一个问题的答案是"数据" ,数据对于任何程序员都是必不可少的,每个编程项目的基本要求是大量有用的数据。

第二个问题的答案有些棘手,因为有很多方法可以获取数据,通常,可能会从数据库或数据文件以及其他来源获取数据,但是,如果需要大量在线可用数据,该怎么办?获取此类数据的一种方法是手动搜索(在Web浏览器中单击)并保存(将其复制粘贴到电子表格或文件中)所需的数据。这种方法非常繁琐且耗时,获取此类数据的另一种方法是使用网络抓取。

网络抓取,也称为网络数据挖掘或网络收集,是构建可提取,解析,下载和组织的过程来自网络的信息,换句话说,Web抓取软件不是手动从网站保存数据,而是根据要求自动从多个网站加载和提取数据。

Web爬虫起源

Web抓取的起源是屏幕抓取,它用于集成非基于Web的应用程序或本机Windows应用程序,最初在广泛使用万维网(WWW)之前就使用了屏幕抓取函数,但是它无法扩大WWW的规模,这使得必须自动执行屏幕抓取的方法,并且出现了称为" Web Scraping" 的技术。

Web爬虫组件

网络爬虫模块(Web Crawler Module)

Web爬虫的一个非常必要的组件,即Web爬虫模块,用于通过向URL发出HTTP或HTTPS请求来导航目标网站,搜寻器下载非结构化数据(HTML内容),并将其传递给下一个模块提取器。

提取器(Extractor)

提取器处理获取的HTML内容,并将数据提取为半结构格式,这也称为解析器模块,并使用不同的解析技术(如正则表达式,HTML解析,DOM解析或人工智能)来实现其函数。

数据转换和清理模块(Data Transformation and Cleaning Module)

上面提取的数据不适合立即使用,它必须通过一些清理模块,以便可以使用它,诸如字符串操作或正则表达式之类的方法可用于此目的,注意,提取和变换也可以在单个步骤中执行。

存储模块(Storage Module)

提取数据后,无涯教程需要根据需要存储它。存储模块将以标准格式输出数据,该数据可以以数据库或JSON或CSV格式存储。

参考链接

https://www.learnfk.com/python-web-scraping/python-web-scraping-introduction.html

标签:Web,提取,Python,抓取,无涯,模块,爬虫,数据
From: https://blog.51cto.com/u_14033984/8620304

相关文章

  • 无涯教程-F# - 事件类型
    事件允许类之间相互发送和接收消息,对象通过同步消息传递相互通信。事件类和事件模块Control.Event<'T>类有助于创建可观察的对象或事件。Member说明Publish将观察输出作为一等值发布。Trigger使用给定的参数触发观察。Control.Event模块提供用于管理事件流的功能-Valu......
  • Python 中的单下划线和双下划线
    哈喽大家好,我是咸鱼当我们在学习Python的时候,可能会经常遇到单下划线_和双下划线__这两种命名方式单下划线_和双下划线__不仅仅是只是一种简单的命名习惯,它们在Python中有着特殊的含义,对于代码的可读性和功能实现有着关键的作用。那么今天我们来看一看在Python......
  • 无涯教程-F# - 模块声明
    F#模块是F#代码构造的组合,如类型,值,函数值和do绑定中的代码,它被实现为仅具有静态成员的公共语言运行时(CLR)类。根据情况,整个文件是否包含在模块中,有两种类型的模块声明-顶级模块声明本地模块声明在顶层模块声明中,整个文件都包含在模块中,在这种情况下,文件中的第一个声明是模块......
  • Python——第四章:推导式
    推导式:推导式是为了简化代码.语法:列表推导式:[数据for循环if判断]集合推导式:{数据for循环if判断}字典推导式:{k:vfor循环if判断}元组推导式:不存在(因为元组不可以增、删、改)生成器表达式:(数据for循环if判断) ->不是元组推导式不要把推导式妖魔化不要刻意去用推......
  • 鲸科达:Python 面向对象
    2023/11/2918:30:17 面向对象编程(Object-OrientedProgramming,OOP)是一种编程范式,它使用“对象”来设计软件。在Python中,面向对象编程是一种主要的编程方法之一。以下是面向对象编程的一些基本概念,以及如何在Python中实现它们。类和对象在面向对象编程中,“类”是......
  • Python——第四章:生成器(generator)
    生成器(generator):  生成器的本质就是迭代器  创建生成器的两种方案:    1.生成器函数    2.生成器表达式  生成器函数    生成器函数中有一个关键字yield    生成器函数执行的时候,并不会执行函数,得到的是生成器.   ......
  • 聪明办法学python chap4:条件
    聪明办法学pythonchap4:条件if语句:通过缩进判断是不是在if里面ifelse:if成立else就不管了if不成立执行elsex=int(input())ifelifelse:平行依次判断:if():elif():elif():else:语法糖:(推导式)def(n):returnnif(n>=0)else-n等价于:def(n):​ ifn>=0:......
  • 软件测试/人工智能|为什么Python在人工智能时代异军突起
    简介Python作为一门动态、多范式的编程语言,在软件开发领域中占据着重要地位。但其真正的崛起来自于人工智能时代的到来。在这个信息爆炸和智能革命的时代,Python凭借其简洁易读的语法、丰富的库和框架以及强大的社区支持,成为了人工智能和机器学习领域的首选语言之一。Python的优......
  • 【Python入门教程】Python的shutil库介绍+基础函数使用(文件/目录复制、移动、删除、解
    ​前言        很多时候编过的代码过段时间就忘了,所以想用博文记录一下一些平时常用库的函数,今天跟大家分享一下python的shutil库的常用函数,包括文件复制、删除、移动等常见操作。同时为了复习之前python类的使用,所以今天的代码就用类封装起来了,大家直接看函数就行,不需......
  • python流行控制语句
    【一】流程控制语句介绍程序是由语句构成,而流程控制语句是用来控制程序中每条语句执行顺序的语句。可以通过控制语句实现更丰富的逻辑以及更强大的功能。几乎所有编程语言都有流程控制语句,功能也都基本相似。其流程控制方式有顺序结构分支结构循环结构这里最简单......