get请求 / post请求

1.get请求:
    不携带参数的get请求
    不携带参数的get请求 + headers
    携带参数的get请求 + headers
    
2.post请求: 构建参数的post请求
    
3.响应数据的获取与属性
	(1).响应数据的获取:
			res.text: 文本数据
			res.json(): json数据
			res.content: 流
    (2).向应的其他属性:
            res.status_code: 获取响应状态码
            res.headers: 响应头
            res.cookie: cookie信息

  

requests模块的get请求

# 不携带参数的get请求: 爬取搜狗主页
import requests
url = 'https://www.sogou.com/'
res = requests.get(url=url)
print(res)
print(res.text)

with open('sougou.html', 'w', encoding='utf-8') as f:
    f.write(res.text)
# 不携带参数的get请求  +  headers: 爬取知乎的发现页
import requests
headers = {
    'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/75.0.3770.142 Safari/537.36'
}
url = 'https://www.zhihu.com/explore'
res = requests.get(url=url, headers=headers)
with open('zhihu.html', 'w', encoding='utf-8') as f:
    f.write(res.text)
# 携带参数的get请求  +  headers: 知乎的发现栏中搜索Python
import requests
headers = {
    'User-Agent':'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/75.0.3770.142 Safari/537.36'
}
url= 'https://www.zhihu.com/search?'
params = {
    'type':'content',
    'q':'python'
}

res = requests.get(url=url, headers=headers, params=params)
print(res)
print(res.text)
with open('python.html', 'w', encoding='utf-8') as f:
    f.write(res.text)
重点掌握GET & POST:   GET与POST的区别
1、GET请求中的参数包含在URL里面,数据可以在URL中看到,而POST请求的URL不回包含这些数据,POST的数据
都是通过表单形式传输的。会包含在请求体中
2、GET请求提交的数据最多只有1024字节,而POST方式没有限制
3、post请求比get请求相对安全

  

requests模块的post请求

# requests的post请求: 以post方式请求httpbin.org/post时会返回提交的请求信息
import requests
headers = {
     'User-Agent':'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/75.0.3770.142 Safari/537.36'
}
url = 'http://httpbin.org/post'
data = {
    'name': 'spiderman',
    'age': 8
}
res = requests.post(url=url, headers=headers, data=data)
print(res.text)

 

posted @ 2020-09-09 11:23  高登汗  阅读(316)  评论(0编辑  收藏  举报