0
点赞
收藏
分享

微信扫一扫

爬虫urllib库(上)

Urllib

1.什么是互联网爬虫?

如果我们把互联网比作一张大的蜘蛛网,那一台计算机上的数据便是蜘蛛网上的一个猎物,而爬虫程序就是一只小 蜘蛛,沿着蜘蛛网抓取自己想要的数据 。

2.爬虫核心?

1.爬取网页:爬取整个网页 包含了网页中所有得内容
2.解析数据:将网页中你得到的数据 进行解析
3.难点:爬虫和反爬虫之间的博弈

3.爬虫的用途?

数据分析/人工数据集 社交软件冷启动 舆情监控

4.爬虫的分类

1.通用爬虫:

实例

​ 百度、360、google、sougou等搜索引擎‐‐‐伯乐在线

功能

​ 访问网页‐>抓取数据‐>数据存储‐>数据处理‐>提供检索服务

robots协议

​ 一个约定俗成的协议,添加robots.txt文件,来说明本网站哪些内容不可以被抓取,起不到限制作用 自己写的爬虫无需遵守

网站排名(SEO)

  1. 根据pagerank算法值进行排名(参考个网站流量、点击率等指标)
  2. 百度竞价排名

缺点

1. 抓取的数据大多是无用的
2.  不能根据用户的需求来精准获取数据 

2.聚焦爬虫

功能

​ 根据需求,实现爬虫程序,抓取需要的数据

设计思路

​ 1.确定要爬取的url 如何获取Url

​ 2.模拟浏览器通过http协议访问url,获取服务器返回的html代码 如何访问

​ 3.解析html字符串(根据一定规则提取需要的数据)

5.反爬手段

1.User‐Agent:
	User Agent中文名为用户代理,简称 UA,它是一个特殊字符串头,使得服务器能够识别客户使用的操作系统及版
本、CPU 类型、浏览器及版本、浏览器渲染引擎、浏览器语言、浏览器插件等。
2.代理IP
	西次代理
	快代理
	什么是高匿名、匿名和透明代理?它们有什么区别?
		1.使用透明代理,对方服务器可以知道你使用了代理,并且也知道你的真实IP。
		2.使用匿名代理,对方服务器可以知道你使用了代理,但不知道你的真实IP。
		3.使用高匿名代理,对方服务器不知道你使用了代理,更不知道你的真实IP。
3.验证码访问
	打码平台
	云打码平台
	超级🦅
4.动态加载网页 网站返回的是js数据 并不是网页的真实数据
	selenium驱动真实的浏览器发送请求
5.数据加密
	分析js代码

6.urllib库使用

urllib.request.urlopen() 模拟浏览器向服务器发送请求
response 服务器返回的数据
	response的数据类型是HttpResponse
		字节‐‐>字符串
		解码decode
		字符串‐‐>字节
		编码encode
	read() 字节形式读取二进制 扩展:rede(5)返回前几个字节
	readline() 读取一行
	readlines() 一行一行读取 直至结束
	getcode() 获取状态码
	geturl() 获取url
	getheaders() 获取headers
	urllib.request.urlretrieve()
	请求网页
	请求图片
	请求视频

举报

相关推荐

0 条评论