requests之爬取搜狗首页的页面数据
基础爬虫其实很简单,就相当于套公式,今天就来简单说说基础爬虫的基础使用吧。
1. requests模块
在基础爬虫中,用得比较多的是requests这个模块。
requests模块: python中原生的一款基于网络请求的模块,功能非常强大,简单便捷,效率极高。
- 作用:模拟浏览器发请求。
- 如何使用:(requests模块的编码流程):
1. 指定url
2. 发起请求
3. 获取响应数据
4. 持久化存储 - 环境安装:
pip install requests
不会安装的小伙伴可以看看我之前的Python安装包的小白教程:
Python安装pandas模块
只要把里面的pandas
模块改为requests
模块即可!
2. 实践
我们以爬取搜狗首页的页面数据为目标进行实践。
Step1: 导入包
import requests
Step2: 指定url
url = 'https://www.sogou.com/'
Step3: 发起请求
# get方法会返回一个响应对象
response = requests.get(url)
Step4: 获取响应数据, text返回的是字符串形式的响应数据
# 因为我们要爬取搜狗首页的页面数据,而页面数据就是以文本的形式呈现的,所以就返回text
# 在浏览器页面按F12,打开开发者工具调试页面里面的数据就是页面数据
page_text = response.text
Step5: 持久化储存
# 这里可以将页面数据储存在自己想储存的地方,我储存在了"../sogou.html"这个文件里
with open(r"../sogou.html", 'w', encoding='utf-8') as fp:
fp.write(page_text)
print("爬取数据结束")
全部程序为:
"""
TOPIC: 爬取搜狗首页的页面数据
author: Blue
time: 2020-09-02
"""
import requests
if __name__ == "__main__":
# step1: 指定url
url = 'https://www.sogou.com/'
# step2: 发起请求
# get方法会返回一个响应对象
response = requests.get(url)
# step3: 获取响应数据, text返回的是字符串形式的响应数据
page_text = response.text
print(page_text)
# step4: 持久化储存
with open(r"../sogou.html", 'w', encoding='utf-8') as fp:
fp.write(page_text)
print("爬取数据结束")
结果演示:
因为我们只获取了文本数据,所以里面的一些图片啥的都没有。