由于本人最近正在学习爬虫的相关知识,对于爬虫的很多了解的都不是透彻,有什么错误的地方,还请不吝指出。话不多说,进入正题。第一天,主要就是介绍什么是爬虫。
1.什么是互联网爬虫?
网络爬虫又称网络蜘蛛、网络蚂蚁、网络机器人 蠕虫等,可以自动化浏览网络中的信息,当然浏览信息的时候需要按照我们制定的规则进行,这些规则我们称之为网络爬虫算法。使用Python可以很方便地编写出爬虫程序,进行互联网信息的自动化检索。
搜索引擎离不开爬虫,比如百度搜索引擎的爬虫叫作百度蜘蛛(Baiduspider)。百度蜘蛛每天会在海量的互联网信息中进行爬取,爬取优质信息并收录,当用户在百度搜索引擎上检索对应关键词时,百度将对关键词进行分析处理,从收录的网页中找出相关网页,按照一定的排名规则进行排序并将结果展现给用户。
2、爬虫主要做什么?
- 爬取网页:爬取整个网页 包含了网页中所有得内容。
- 解析数据:将网页中你得到的数据 进行解析。
- 难点:爬虫和反爬虫之间的博弈。
3、反爬手段
-
User-Agent:
ser Agent中文名为用户代理,简称 UA,它是一个特殊字符串头,使得服务器能够识别客户使用的操作系统及版本、CPU 类型、浏览器及版本、浏览器渲染引擎、浏览器语言、浏览器插件等。 -
代理IP
所谓代理(我个人理解):就是当我们爬取某些网站时,会因为请求次数过多而被封,这时就需要设置代理 IP 来避免爬虫程序被封。什么是高匿名、匿名和透明代理?它们有什么区别?
1.使用透明代理ip,对方服务器可以知道你使用了代理,并且也知道你的真实IP。
2.使用匿名代理ip,对方服务器可以知道你使用了代理,但不知道你的真实IP。
3.使用高匿名代理ip,对方服务器不知道你使用了代理,更不知道你的真实IP。
这里推荐一下比较好用的代理:西次代理,快代理。
4、http和https的区别
-
http
明文传输,端口号80
HTTP协议(HyperText Transfer Protocol,超文本传输协议):是一种发布和接收 HTML页面的方法。 -
https
加密传输,端口号443
HTTPS(Hypertext Transfer Protocol over Secure Socket Layer)简单讲是HTTP的安全版,在HTTP下加入SSL层。 HTTPS = HTTP+SSL -
SSL(Secure Sockets Layer 安全 套接层)
主要用于Web的安全传输协议,在传输层对网络连接进行加密,保障在Internet上数据传输的安全。 -
4.SSL报错解决方法?
注意:如果报错SSL,那么解决方案是import urllib.request import ssl ssl._create_default_https_context = ssl._create_unverified_context