Python 网络爬虫 002 (入门) 爬取一个网站之前,要了解的知识

如何用Python爬取网页数据,Python爬取网页详细教程 阅读详情

网站站点的背景调研

1. 检查 robots.txt

网站都会定义robots.txt 文件,这个文件就是给 网络爬虫 来了解爬取该网站时存在哪些限制。当然了,这个限制仅仅只是一个建议,你可以遵守,也可以不遵守。但对于一个良好的网民来说,最好还是遵守robots.txt 文件里面的限制。

Q: 如何查看这个 robots.txt 文件?
A: 你只需要在 目标网站站点域名 后面加上 robots.txt 即可。
举例:目标网站站点域名:http://www.aobosir.com/ 。目标网站站点的robots.txt 文件:http://www.aobosir.com/robots.txt 。

# section 1
User-agent: BadCrawler
Disallow: /

# section 2
User-agent: *
Crawl-delay: 5
Disallow: /trap

# section 3
Sitemap: http://aobojaing.github.io/sitemap.xml 

Q: robots.txt 文件里面的东西都是什么意思,又有什么用?
A: 一个部分一个部分的讲解:

section 1:

这部分的意思就是:robots.txt 文件禁止那些代理为 BadCrawler 的爬虫访问该网站。 BadCrawler 中文翻译为:恶意爬网程序。
其实这一部分纯粹没用。因为一个恶意爬虫是根本不会代理成:BadCrawler 来访问网站的。你想啊,一个小偷,他会在偷别人东西之前告诉对方,“我是小偷,我要偷你东西了,你做好准备哦!” ?
我们还是尽量遵守robots.txt 文件里面的要求为好。这套专栏后面的博客中,将会展示如何让爬虫自动遵守 robots.txt 文件的要求。

section 2:

不管什么用户,两次爬取请求之间的间隔时间不可以小于 5秒钟。否则你访问的这个网站会将网页自动跳整到 /trap 链接。

这里写图片描述

就是说:网站服务器封禁了你的IP。我这个网站是封禁你1分钟的时间。一个真实的网站可能会对你的IP封禁更长的时间,如果你行为恶劣,甚至是永久封禁!

section 3:
定义了一个 Sitemap 文件,这个文件就是所谓的 网站地图。我们马上就来介绍这个文件。

2. 检查 网站地图

下面的截图是在 robots.txt 文件中发现的 Sitemap 文件的内容:

这里写图片描述

网站提供的 Sitemap 文件(即 网站地图),它提供了网站站点里面所有页面的链接。它们组成了这个 Sitemap 文件,现在你应该清楚:为什么叫这个文件为网站地图了吧。
我们无须爬取某个网站站点里面的每一个网页。网站提供的 Sitemap 文件 帮助了我们的网络爬虫定为网站最新的内容。

这里写图片描述

虽然 Sitemap 文件提供了一种爬取网站的有效方式,但是我们仍需要对其谨慎处理,因为该文件经常存在缺失、过期或者不完整的问题。

3. 估算 网站大小

Q: 为什么要估算 网站大小?

A: 目标网站的大小指的是,这个站点里面有多少个网页。有多少的网页,会影响到我们如何进行爬取。爬取网站上的信息的方式有两种:串行爬取 和 分布式爬取。如果目标网站的网页数量不是很多,只有几百个网页,使用串行爬取就可以。但是如果一个目标网站的网页有几百万个,我们使用串行爬取的话,可能要持续数月才能完成,这个时候,我们就需要分布式爬取的策略来解决这个问题。
所以,在爬取目标网站之前,估算 网站大小 是很有必要的。


Q: 如何估算 网站大小?

A: 估算网站大小的一个简便方法是:检查Google爬虫的爬取结果。
举例:目标网站:http://blog.youkuaiyun.com/github_35160620,现在我们要估算这个网站的大小。做法:在google搜索栏里面输入:site:http://blog.youkuaiyun.com/github_35160620 ,就可以了。

这里写图片描述

Google的爬虫估算该网站拥有98个网页,这个数字和事情情况差不多。(实际上,这个http://blog.youkuaiyun.com/github_35160620网站里面有101格网页。)

这里写图片描述

  1. 我们通过 Google搜索的site关键词过滤域名结果,从而获取估计的网站大小的信息。
  2. 这个例子估算的结果还算正确。不过对于更大型的网站,我们会发现 Google 的估算并十分准确。

Q: 上不了 Google 网站,怎么办?
A: 告诉你一个方法:无须翻墙,无需任何设置,就可以上谷歌,网速也是相当的快:虫部落 http://so.chongbuluo.com/

4. 识别 网站所用技术

编写中…

5. 寻找 网站所有者

编写中…

Python爬虫——使用Scrapy实现图片的爬取(四) 使用scrapy实现爬虫实例——图片爬取        继前三章中Spider爬取数据,Item收集数据后交给Pipeline对数据进行处理,本章在前三章的基础上继续实现对图片的爬取。 一、Spider爬取数据 spider文件夹中booksSpider.py代码: from scrapy import Request from scrapy.spiders... 阅读详情

相关推荐

python爬取5442网站图片

python爬取5442网站图片 python3环境下: #!/usr/bin/python #encoding: utf-8 """ 本次爬虫使用的是python3的版本,并且本次的目标网站并没有采用js来加载图片,所以没有涉及对js脚本的解析,都是通过来分析html文件通过正则来一步步提取图片网址,然后存起来。 首先这个网站有很多分类,到美女图这个子网页,可以发现有很多

江说江湖专栏:欠世界一个伟大的产品! 3649

高效爬取网站信息

爬虫“大军”的建立和管理 1.简谈多协程 2.探索多协程用法 3.创立多个爬虫 3.1 queue模块 3.2队列的应用与多协程实现 3.3多协程运行的输出结果与解密 3.4多协程与debug 4.多协程实战应用 4.1分析任务 4.2format方法的应用 4.3 拆解任务 i.存放网站 ii.爬取内容 iii.使用多协程爬取内容,并存入.xlsx文件

weixin_54929649的博客 4150

【Python爬虫实战002】在线课程网站多页课程数据爬取模板

本模板是一个高度可配置的在线课程网站爬取解决方案,专为教育平台数据采集设计

weixin_51890847的博客 521

python爬取网页数据步骤,python爬取网页详细教程

Beautiful Soup提供一些简单的、python式的函数用来处理导航、搜索、修改分析“标签树”等功能。它是一个工具箱,通过解析文档为用户提供需要抓取的数据,因为简单,所以不需要多少代码就可以写出一个完整的应用程序。Beautiful Soup自动将输入文档转换为Unicode编码,输出文档转换为utf-8编码。你不需要考虑编码方式,除非文档没有指定一个编码方式,这时,Beautiful Soup就不能自动识别编码方式了。然后,你仅仅需要说明一下原始编码方式就可以了。

w666666Wwwwwww的博客 8072

利用netmq在相机应用于unity之间传输图像数据

Unity工业相机接入方案解析 本文探讨了在Unity中接入不同品牌工业相机的技术方案。研究发现: Basler相机可直接调用官方DLL(pylonc.net.dll)实现接入 海康和大恒相机因驱动DLL依赖C++组件,无法直接调用 解决方案:通过独立进程(相机应用程序)与Unity进行通信,采用NetMQ实现图像数据传输 技术实现要点: 相机端:使用PublisherSocket发布JPEG图像帧 Unity端:通过SubscriberSocket订阅图像数据 优化:设置高水位线控制缓存帧数,避免数据堆积

weixin_46450859的博客 417

Coze智能体网页集成实战:从零搭建免登录AI助手

本文详细介绍了如何利用Coze Chat SDK从零开始为网站集成免登录AI助手。通过获取访问令牌和智能体ID,仅需几行JavaScript代码即可将功能完整的对话窗口嵌入网页,实现开箱即用的智能交互。文章重点讲解了核心部署步骤、会话隔离方案以及UI深度定制方法,帮助开发者快速打造贴合品牌、提升用户体验的网页AI助手。

gold8的专栏 558

我用 Python 做了一个轻松爬取各大网站文章并输出为 Markdown 的工具!

爬取各大技术网站的文章,转化为 Markdown 格式,防止文章由于不明原因下架。这样可以在本地保存一些高质量文章。整理自己过去发布的文章。(我之前写的一些文章并没有在本地备份)说干就干,我用了几个小时,编写并发布了一个文章爬取工具:Article Crawler,接下来,我给大家分享一下我的制作过程!今天,我从需求分析、技术选型、实现方案、优化、效果展示等角度,从 0 到 1 实现了 Article Crawler 工具,并向大家介绍了详细的实现过程。

z099164的博客 1345

数据库1:数据库创建与管理(头歌云课)

在 Windows 系统中,可以直接通过 SQLServer 的应用程序连接数据库,不过很多时候在生产环境下,我们需要通过命令行来连接数据库。两个数据库,数据库名分别为 TestDb 和 MyDb 的数据库,注意先后顺序。为了完成本关任务,你需要掌握:1.如何在 Linux 系统中连接 SQLServer 数据库,2.如何创建数据库。连接的数据库是本地数据库,用户名是 sa ,密码是 '

weixin_60530224的博客 2315

分享16个Python接单平台,做私活爽歪歪!(附100个爬虫源码)

一、python爬虫是可以做副业的,主要是爬取网站、小程序或者APP的数据,对数据进行分析与处理,或者直接向客户提供爬虫程序与技术支持。当初学会Python那会儿,有朋友来介绍我去接私活,是为一家公司做网站,那一单我赚了3.5K。从那之后逐渐熟练,业余时间陆续接了包括数据收集处理、网站后台接口开发之类的很多私活,平均每月靠兼职做私活都能赚5K左右。

weixin_67991858的博客 1773

Zemax操作16--激光谐振腔(含晶体)

谐振腔(含晶体)

lzy750750的博客 8317

GD32H7 SPI驱动实战:手把手教你用SPI3连接外部Flash(W25Q128)并实现读写

本文详细介绍了基于GD32H7系列MCU的SPI3接口驱动W25Q128外部Flash的全流程开发指南。从硬件设计、引脚配置到SPI3外设深度配置,再到底层通信函数实现和高级功能优化,提供了完整的解决方案。特别针对高速读取、DMA传输和信号完整性等关键环节进行了优化,确保系统在-40℃~85℃范围内稳定工作。

weixin_28729205的博客 380

用python爬取网站数据代码,python网络爬虫爬取数据

爬虫的学习按照任务驱动的方式进行,最终实现douban电影Top250的基本信息抓取,包括电影的名称、douban评分、评价数、电影概括、电影链接等。后续会再以可视化的方式展现,比如统计图。电影Top250网址:https://movie.douban.com/top250是什么网络爬虫是一种按照特定规则,自动抓取互联网信息的程序或者脚本。由于互联网数据的多样性和资源的有限性,如今根据用户需求定向抓取相关网页并分析已经成为了主流的爬取策略。能做什么。

chatgpt001的博客 4081

【ESP 保姆级教程】第三方库篇 ——TimeLib库,一个非常Nice的时间库,结合第三方进行校正时间

Time,这是一个为Arduino提供时间支持的库。 这个库的例子中会教会我们多种方式去获取时间: - 一个`RTC`时钟 - 网络`NTP`时间 - `GPS`时间

单片机菜鸟哥的博客 3674

《python》002 网络爬虫

简单了解 爬取网站 趣头条爬取 网络爬虫实例

菜狗的博客 189

为分析表明卡诺电池技术(或热泵式储电技术)-是目前最佳的储能技术!!!-2021年

卡诺电池(Carnot Battery)是一种基于热力学循环的储能技术,其核心原理是通过热力循环将电能转化为热能存储,并在需要时将热能重新转换为电能输出。这种技术得名于热力学中的卡诺循环原理,由法国工程师卡诺于1824年提出。

qq_15963745的博客 656

【零基础入门unity游戏开发——2D篇】SpriteEditor图片编辑器

【零基础入门unity游戏开发——2D篇】SpriteEditor图片编辑器

向宇的博客,专注php/web全栈 unity游戏开发,欢迎大家评论纠错 2330

爬取网页数据是什么意思,python爬虫爬取网页数据

爬虫的学习按照任务驱动的方式进行,最终实现douban电影Top250的基本信息抓取,包括电影的名称、douban评分、评价数、电影概括、电影链接等用python绘制一个笑脸。后续会再以可视化的方式展现,比如统计图。电影Top250网址:https://movie.douban.com/top250是什么网络爬虫是一种按照特定规则,自动抓取互联网信息的程序或者脚本。由于互联网数据的多样性和资源的有限性,如今根据用户需求定向抓取相关网页并分析已经成为了主流的爬取策略。能做什么。

aq8821的博客 969

ET2012新版免狗免安装绿色软件

ET2012新版免狗免安祖昂绿色软件。,新界面,新视觉,

python爬虫 爬取清纯小姐姐图片

使用requests库,re库和BeautifulSoup库爬取小姐姐图片,该篇将创建二级目录,将不同小姐姐的图片分别存储在不同的目录下

Alan JIN的博客 6579

LinePhone3.2.7(android端最新版本) sip客户端

SIP客户端For android:LinePhone3.2.7(最新版本),官网地址:http://www.linphone.org/

大中型超市收银系统(可直接运行)

光步前台收银系统系统功能:商品销售、商品退货、挂单、收银员权限、会员销售、单品取消、整单取消、商品查询、脱机销售、脱机数据上传,基本资料下载,开钱箱、小票打印、收款结算,支持多币种付款方式(现金、储值卡、礼券、微信等),支持多种促销。运行环境:.net 4.0登陆信息用户名:1001 密码:123456内置商品信息,商品编码可输入00001000 - 00010000,测试效果相关功能键F5 结算 F9挂单 F11商品查询 F8退货 Insert单品取消 Del整单取消 F12开钱箱F2 会员 Ctrl+Z退出系统 Home 锁屏 相关源码待公开

【入门级教程】python使用scrapy库实现爬虫

一开始笔者都是使用requests+bs4实现爬虫,直到后来我发现了有一个功能强大使用简单的爬虫框架——scrapy,本文是一个入门级教程,会记录下从零开始使用scrapy实现最简单爬虫的全过程: 第一步,安装scrapy,在命令行中输入: pip install scrapy 当然,如果你使用的是pycharm,就可以在Project:Python → Project Interperter...

Koorye今天自学了吗 1936

精雕软件(JDpaint) 5.5 绿色版

精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版

python入门002~创建属于自己的第一个python项目

3,文件创建成功三,编写python代码1,简单编写以下代码代码就上面简单的三行。2,运行python代码,右键Hello.py---->点击Run Hello 就可以运行python文件了。3,看下控制台输入的结果大家可以看到,控制台输出的结果,一个是打印了hello world ,一个是计算了1+1=2,另外一个是计算了减法4-1=3;到这里我们第一个简单的python项目,就创建成功了。项目源码====项目源码,已经放到网盘,有需要的同学,请。

2401_84584289的博客 1693

《python》002 网络爬虫 -0A 基础

python3.6 安装 Scrapy ①安装②Anaconda安装scraoy Request使用大全简单了解爬取网站 趣头条爬取网络爬虫实例小甲鱼零基础python 视频小甲鱼视频 爬虫篇 爬虫技巧 python教程 对象 = obj 一、import urllib.request urllib = URL +lib(库) URL: 协议 + 域名系统/IP地址 + 资源具体地址 ...

菜狗的博客 382

如何优雅地使用Python爬虫,推荐几个优秀的爬虫项目

话不多说,小码主要推荐3类爬虫项目,供大家参考~

xiangxueerfei的博客 1177

Python爬虫开源项目合集

  scrapy - 最出名的网络爬虫,一个快速,高层次的屏幕抓取和web抓取框架,用于抓取web站点并从页面中提取结构化的数据。Scrapy用途广泛,可以用于数据挖掘、监测和自动化测试。官方主页,Scrapy 轻松定制网络爬虫 - 教程,Scrapy 中文指南 。   项目地址:   https://github.com/scrapy/scrapy/   BeautifulSoup - Beautifu Soup不完全是一套爬虫工具,需要配合urllib使用,而是一套HTML/XML数据分析,清洗和获..

python自学网 2568

python简单爬虫入门一_Python爬虫简单入门及小技巧

刚刚申请博客,内心激动万分。于是为了扩充一下分类,随便一个随笔,也为了怕忘记新学的东西由于博主十分怠惰,所以本文并不包含安装python(以及各种模块)和python语法。目标前几天上B站时看到一部很好玩的番剧,名字《笨女孩》,实际上是由同名的搞笑向漫画动画化的。大家都知道动画一般一周一更,很难满足我们的需求,所以我们就来编写一个爬虫,来爬取漫画咯。那么本文的目标就是爬取《初音MIX》这部漫画(因...

weixin_39610678的博客 130

002:Python爬虫Urllib库全面分析

Urllib: Python中有一个功能强大,用于操作URL,并且在爬虫中经常使用的库、就是Urllib库。 (在python2的时候,有Urllib库,也有Urllib2库。Python3以后把Urllib2合并到了Urllib中) 合并后,模块中有很多的位置变动。我在这里先介绍一些常用的改动。 Python2: import urllib2 >>>>>Python...

李玺 8393
上一篇: STM32 C++编程 001 工程模板
下一篇: STM32 C++编程 002 GPIO类
AoboSir
博客等级 码龄10年 996粉丝 285原创
评论 3
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值