目录
一,get函数中的相关参数
在网络爬虫中,requests
库是非常有用的工具之一。它可以用来获取网页的内容,从而进行数据抓取和分析。。它提供了一种简单而优雅的方式来发送 HTTP/1.1 请求。使用 requests
库,你可以轻松地发送 GET、POST、PUT、DELETE 等类型的请求,并处理响应。下面就详细的介绍其中的get函数。
查看get的源代码
def get(url, params=None, **kwargs):
我们可以发现里面有三个需要传递的参数,其中url是表示要请求的目标 url。这是一个必需的参数,指定了要发送 GET 请求的目标网址。而params表示要在 URL 中传递的参数。它是一个字典或者字节序列,用于将额外的数据附加到 GET 请求中。例如,如果你要向网站请求特定页面的数据,可以将这些数据作为参数传递给 params
参数,它将自动构建成 URL 查询字符串的形式附加到 URL 后面。而kwargs是一个可变关键字参数,允许你向请求中添加任意数量的关键字参数。这些参数将被传递给 requests.get()
函数的其他可选参数,例如 headers
、cookies
、proxies
等。
例如
import requests
url = 'https://www.bing.com/search?q=%E5%9C%B0%E5%9B%BE&form=ANSPH1&refig=66208435c03344c5809348b120e2ef66&pc=CNNDDB'
params = {
'longitude': '123.456', # 示例经度
'latitude': '78.901' # 示例纬度
}
response = requests.get(url, params=params)
print(response.text)
我们在地图这个网易中增加了两个参数并是以字典的形式存储
再例如
import requests
url = 'https://www.douban.com'
headers = {
'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/98.0.4758.102 Safari/537.36'
}
response = requests.get(url, headers=headers)
print(response.text)
这个就是获取豆瓣这个网页的同时模拟特定的客户端环境。
二,get函数的基本作用
毫无疑问get函数最大的作用就是获取页面信息,可页面信息的不同获取方式也不同
例如:
import requests
# 1. 获取网页内容
response = requests.get('https://www.douban.com')
print(response.text)
# 2. 获取 API 数据
response = requests.get('weather.cma.cn/web/weather/58321.html')
data = response.json()
print(data)
# 3. 获取文件
response = requests.get('https://music.163.com/song/media/outer/url?id=562598065.mp3')
with open('b.mp3', 'wb') as f:
f.write(response.content)
# 4. 获取网页状态
response = requests.get('https://www.douban.com')
if response.status_code == 200:
print('Website is accessible')
else:
print('Website is not accessible')
上述的代码列举了一些get函数的作用,下面来逐个解释。首先第一个很好理解,直接获取网页以文本的形式,第二个获取网页的api,获取到的可能是json也可能是XML、HTML类型的。第三是获取图片文件这里的content是返回二进制的文件。第四个就是检查网页的状态。200表示网页状态正常,同时还有301表示请求的资源已被永久移动到新位置。404就是表示请求的资源未找到。401表示请求需要用户认证。客户端通常需要提供有效的用户名和密码。