#requests 库
import requests
from urllib import parse
#1.post请求
url = "…………"
headers = {
'User-Agent': '。。。。'
}
data = {
'username':'…………',
'password':'…………'
}
resp = requests.post(url,headers=headers,data=data)
print(resp.text)
# 对于 resp.text 有时候如果出现乱码 可采用 resp.content.decode('utf-8') content 是二进制格式
#2.代理
url = 'http://httpbin.org/ip'
proxy = {
'http':'111.77.197.127:9999'
}
resp = requests.get(url,proxies=proxy)
print(resp.text)
#3.处理不信任的ssl证书
url = "…………"
resp = requests.get(url,verify=False)
print(resp.text)
#4.session 共享cookie
'''request模块提供了session类,来实现客户端和服务端的会话保持,操作方法如下:
1.
实例化session对象
2.
使用session.post()
模拟登陆,此时将得到cookie,并保存到session中
3.
再使用session.post()或session.get()
方法请求页面时,不会提示需要登录,因为上一步已经将cookie保存到会话中了'''
headers={
'User-Agent':'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/73.0.3683.86 Safari/537.36'
}
post_url = 'https://i.meishi.cc/login_t.php?redirect=https%3A%2F%2Fwww.meishij.net%2F%3Ffrom%3Dspace_block'
post_data = parse.urlencode({
'mobile': '自己的账号',
'type': '6',
'code':'自己的密码'
})
session = requests.session() #用requests.session()创建session对象,相当于创建了一个特定的会话,帮我们自动保持了cookies
session.post(post_url,headers=headers,data=post_data)
#在创建的session下用post发起登录请求,放入参数:请求登录的网址、请求头和登录参数
#访问个人网页
url = 'https://i.meishi.cc/cook.php?id=13686422'
resp = session.get(url)
#在创建的session下用get发起访问个人网页 即 因为 上一步已经 把密码保存在session 中 再访问就不需要密码了
print(resp.text)
requests库(做个笔记)
最新推荐文章于 2024-07-26 16:52:12 发布