目录
前言
道路千万条,安全第一条
爬虫不谨慎,亲人两行泪
一点小小的准备工作
对pip进行换源:win+r 打开命令提示符,输入cmd ,回车,将此串代码复制粘贴,将pip换成清华大学的镜像源
pip config set global.index-url https://pypi.tuna.tsinghua.edu.cn/simple
换好了之后:再次win+r 打开命令提示符,输入cmd ,回车,输入下列代码,安装requests库用以爬虫
pip install requests
直接上手爬取网页
爬虫的本质就是模拟浏览器上网的过程
记住爬虫的四个步骤,UA伪装-->获取网站url-->发送请求-->获取数据并保存
import requests
if __name__ == '__main__':
# UA伪装
head = {
"User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/126.0.0.0 Safari/537.36 Edg/126.0.0.0"
}
# 获取网址
url = "https://baike.baidu.com/item/%E5%91%A8%E6%9D%B0%E4%BC%A6/129156"
# 发送请求
response = requests.get(url, headers=head)
# 获取数据并保存
with open("jay.html", "w", encoding="utf-8") as fp:
fp.write(response.text)
print(response.status_code) # 输出200 则为正常
示例代码为爬取周杰伦百度百科的界面,最后打印是200,即为成功。
1.获取UA伪装
- 右击页面,选择"检查";或者按f12,进入检查界面。
- 再点击"网络",点击左上角的符号清空请求,再按 ctrl+r 刷新网页。
- 你会看到有许多请求被加载出来,往上翻找到第一个,复制右下角的User-Agent:后的内容进行粘贴即可。
2.获取url
步骤与UA差不多
粘贴完UA,再复制请求URL:后面的内容进行粘贴即可
3.发送请求
使用requests.get()方法,传入参数url,headers=head
大部分爬取时的请求方法都是get,再用response保存获取到的内容
4.获取响应数据进行解析并保存
使用.text属性获取服务器返回的文本内容,并进行打印。
再用.status_code属性检查HTTP请求的响应状态码,打印之后若是200即为成功。
有时会有其他状态码的显示
# 状态码解释
2** 成功,操作被成功接收并处理
3** 重定向,需要进一步的操作以完成请求
4** 客户端错误,请求包含语法错误或无法完成请求
5** 服务器错误,服务器在处理请求的过程中发生了错误
总结
以上是最基础的爬虫应用,只是爬取网页并没有什么太大的作用,以后还会有爬取网页的图片和文字信息等。