1,使用python urllib库爬取网页数据
urllib.urlopen()函数
response.read()函数
u2rllib.Request对象请求对象
2,使用Python Requests库爬取网页数据
requests中文文档:http://docs.python-requests.org/zh_CN/latest/index.html
爬虫简单案例
import requests
url = "https://www.gdrtvu.edu.cn/"
response = requests.get(url)
print(response.text) #获取响应体,字符串形式text
3, requests库进阶
1) response的常见属性:
response.text : 响应体str类型 字符串形式
response.content : 响应体bytes类型 #字节串,二进制串
response.status_code: 响应状态码
response.headers :响应头
response.cookies : 响应的cookie
response.request : 获取请求对象
response.request.headers :获取请求头
4,乱码的解决(输出前设置编码格式)
#1.设置响应对象的编码方式
response.encoding="utf-8"
print(response.text) #字符串
#2.设置字节串响应体的解码方式
page_text=response.content.decode('utf-8')
print(page_text)
5,含参数的简单爬取
import requests
url = "https://cn.bing.com/search"
headers = {
'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/114.0.0.0 Safari/537.36'
}
# 含参数搜索 设置参数params 传入到响应请求中
params = {'q':'中山大学'}
response = requests.get(url=url,headers=headers,params=params) #获取响应体,字符串形式text
response.encoding = 'utf-8'
print(response.text)