前言
python实现网络爬虫非常简单,只需要掌握一定的基础知识和一定的库使用技巧即可。本系列目标旨在梳理相关知识点,方便以后复习。
申明
本系列所涉及的代码仅用于个人研究与讨论,并不会对网站产生不好影响。
目录结构
本次案例的目标是学习requests库get请求方法中的params参数的使用技巧。
再次说明,案例本身并不重要,重要的是如何去使用和分析。
上一讲说过了,params参数是用于get请求所携带的请求信息,比如我们百度搜索“爬虫”,这个爬虫就是我们的请求信息。
那么,这次的案例就以百度搜索为例。
打开百度,搜索爬虫
,关注上面的url:
https://www.baidu.com/s?wd=爬虫
不难发现,百度浏览器的网址为https://www.baidu.com/s
,而后面的?wd=爬虫
就是我们的请求参数。
这里需要补充一个知识:在网页请求中一般参数前面都是通过?
分隔的。
基于此,我们可以知道我们的params参数应该这么构建了:
params = {
'wd' : '你要搜索的内容'
}
这次代码比较简单,因为爬虫主要有两个难点,一是获取网页源码,二是解析网页源码,而这次只有前一个步骤,所以比较简单。
代码如下:
# 导包
import requests
# 网站
url = 'https://www.baidu.com'
# 构建params参数
search = input('请输入想要搜索的内容:')
params = {
'wd' : search
}
# 构建headers参数
headers = {
'User-Agent' : 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/115.0.0.0 Safari/537.36'
}
# 访问
response = requests.get(url,headers=headers,params=params)
# 查看访问结果
print(response.status_code)
print(response.content.decode('utf-8'))
结果如下:
本次案例,主要目的是:让大家明白requests库中get请求的params参数如何使用,并且如何去看懂我们平时请求网页的url中的参数在哪里,以帮助我们确定如何构建正确参数。