python爬虫基本概述
python爬虫基本概述
一、爬虫是什么
网络爬虫(Crawler)又称网络蜘蛛,或者网络机器人(Robots). 它是一种按照一定的规则, 自动地抓取万维网信息的程序或者脚本。换句话来说,它可以根据网页的链接地址自动获取网页 内容。如果把互联网比做一个大蜘蛛网,它里面有许许多多的网页,网络蜘蛛可以获取所有网页 的内容。
爬虫是一个模拟人类请求网站行为, 并批量下载网站资源的一种程序或自动化脚本。
二、爬虫可以做什么
1. 搜索引擎
2. 采集金融数据
3. 采集商品数据
4. 采集竞争对手的客户数据
5. 采集行业相关数据,进行数据分析
6. 刷流量
三、爬虫的分类
1、通用网络爬虫 又称为全网爬虫,其爬取对象由一批 URL 扩充至整个 Web,主要由搜索引擎或大型 Web 服 务商使用。
2、聚焦网络爬虫 又称为主题网络爬虫,其特点是只选择性的地爬取与预设的主题相关的页面,相比通用网 络爬虫,聚焦网络爬虫仅需要爬取与主题相关的页面,极大地节省硬件及网络资源,能更 快的更新保存页面,更好的满足特定人群对特定领域的需求。
3、增量网络爬虫 只对已下载的网页采取增量式更新,或只爬取新产生的及已经发生变化的网页,这种机制 能够在某种程度上保证所爬取的网页尽可能的新。
4、深度网络爬虫 Web 页面按照存在的方式可以分为表层页面和深层页面两类。表层页面是只传统搜索引擎 可以索引到的页面,以超链接可以达到的静态页面为主。深层页面是指大部分内容无法通 过静态链接获取,隐藏在搜索表单之后的,需要用户提交关键词后才能获得的 Web 页面, 如一些登陆后可见的网页。
四、爬虫的基本流程
1、浏览网页的流程
2 、爬虫的基本流程
1. 请求网页 通过 HTTP 库向目标站点发起请求,即发送一个 Request,请求可以包含额外的 headers 等 信息,等待服务器响应!
2. 获得相应内容 如果服务器能正常响应,会得到一个 Response,Response 的内容便是所要获取的页面内容, 类型可能有 HTML,Json 字符串,二进制数据(如图片视频)等类型。
3. 解析内容 得到的内容可能是 HTML,可以用正则表达式、网页解析库进行解析。可能是Json,可以 直接转为 Json 对象解析,可能是二进制数据,可以做保存或者进一步的处理。
4. 存储解析的数据 保存形式多样,可以存为文本,也可以保存至数据库,或者保存特定格式的文件
3 、爬虫的测试案例
爬取搜狗首页的页面数据
# 导包
import requests
# step_1 : 指定url
url ='https://www.sogou.com/'
# step_2 : 发起请求:
# 使用get 方法发起get 请求, 该方法会返回一个响应对象。参数url 表示请求对应的url
response = requests.get ( url = url )
# step_3 : 获取响应数据:
# 通过调用响应对象的text 属性, 返回响应对象中存储的字符串形式的响应数据( 页面源码数据)
page_text = response . text
# step_4 : 持久化存储
with open ('sogou.html','w',encoding ='utf -8') as fp:fp.write (page_text)
print ('爬取数据完毕! ! !')
得到sogou.html
想了解更多爬虫可移步:Python网络爬虫教程详解.pdf
python爬虫基本概述相关推荐
- Python 爬虫进阶一之爬虫框架概述
综述 爬虫入门之后,我们有两条路可以走. 一个是继续深入学习,以及关于设计模式的一些知识,强化 Python 相关知识,自己动手造轮子,继续为自己的爬虫增加分布式,多线程等功能扩展.另一条路便是学习一 ...
- 《Python爬虫开发与项目实战》——第3章 初识网络爬虫 3.1 网络爬虫概述
本节书摘来自华章计算机<Python爬虫开发与项目实战>一书中的第3章,第3.1节,作者:范传辉著,更多章节内容可以访问云栖社区"华章计算机"公众号查看 第3章 初识网 ...
- python爬虫概述及简单实践
文章目录 一.先了解用户获取网络数据的方式 二.简单了解网页源代码的组成 1.web基本的编程语言 2.使用浏览器查看网页源代码 三.爬虫概述 1.认识爬虫 2.python爬虫 3.爬虫分类 4.爬 ...
- python爬虫设计模式_Python爬虫进阶一之爬虫框架概述
综述 爬虫入门之后,我们有两条路可以走. 一个是继续深入学习,以及关于设计模式的一些知识,强化Python相关知识,自己动手造轮子,继续为自己的爬虫增加分布式,多线程等功能扩展.另一条路便是学习一些优 ...
- python爬虫概述
一."大数据时代",数据获取的方式:1. 企业生产的用户数据:大型互联网公司有海量用户,所以他们积累数据有天然的优势.有数据意识的中小型企业,也开始积累的数据.2. 数据管理咨询公 ...
- python爬虫实战-爬取微信公众号所有历史文章 - (00) 概述
http://efonfighting.imwork.net 欢迎关注微信公众号"一番码客"获取免费下载服务与源码,并及时接收最新文章推送. 最近几年随着人工智能和大数据的兴起,p ...
- python爬虫scrapy框架教程_Python爬虫教程-30-Scrapy 爬虫框架介绍
从本篇开始学习 Scrapy 爬虫框架 Python爬虫教程-30-Scrapy 爬虫框架介绍 框架:框架就是对于相同的相似的部分,代码做到不出错,而我们就可以将注意力放到我们自己的部分了 常见爬虫框 ...
- 精通python爬虫框架-精通Python爬虫框架Scrapy PDF 中文清晰版
给大家带来的一篇关于Python爬虫相关的电子书资源,介绍了关于Python.爬虫.框架.Scrapy方面的内容,本书是由人民邮电出版社出版,格式为PDF,资源大小8.6 MB,迪米特里奥斯编写,目前 ...
- python爬虫案例-Python3爬虫三大案例实战分享
课程名称: [温馨提示:1. 你可以在PC端浏览器或者微信收藏该页面,以方便你快速找到这个课程:2. 课程相关资料可在课程PC端公告查看下载:3.加入课程后,点(课时)列表即可观看视频 ] 课程须知: ...
- python学起来难不难-零基础学Python爬虫难不难?要怎么学?
零基础学Python爬虫难不难?要怎么学?众所周知,Python是最容易上手的编程语言,如果有一定基础,学会Python爬虫也是分分钟钟的事.对于零基础的学习者来说,Python爬虫也是比较简单的,只 ...
最新文章
- 3D视觉检测的未来:光度立体技术
- linux 中解析命令行参数 (getopt_long用法)
- BLE 安全之虫洞攻击
- python读取sqlserver的数据_Python实现读取SQLServer数据并插入到MongoDB数据库的方法示例...
- c语言各个英文的作用,C语言最重要的知识点复习资料(国外英文资料).doc
- 数学思想 —— 简化问题
- python基本代码教程-python基础教程
- Transformer提效之路干货笔记——一文梳理各种魔改版本Transformer
- 真奇怪:我机器上的freeswitch无法绑定端口了
- 用大白话带你理解CPU指令集
- 关于税控的一些问题总结
- 【DevOps研发管理方案】一:方案简介
- java前端vml_在Web中使用JavaScript和VML实现WebGIS中的测距
- Adobe InDesign繁体字转简体字
- python url加密解密_python解密百度加密链接的脚本
- ANE总结(Android+iPhone)
- 一篇文章搞懂前端学习方法与构建知识体系
- 数据结构:项目三、算术表达式求解
- Lync(Skype)接口开发实录
- android7.1自带壁纸,RK3399 Android7.1 修改壁纸