模拟用户登录

 1.查找提交入口和表单数据

 复制验证码

 <img class="verCodeImg" src="/kaptcha.jpg?v=0.5120661510713358" οnclick="verCode(this)">

 只需要src———验证码这张图的路径

 "/kaptcha.jpg?v=0.5120661510713358"

再将host添加得到验证码的网址

"https://www.ptpress.com.cn//kaptcha.jpg?v=0.5120661510713358"


2.提交表单完成模拟登录

import requests

url = "https://www.ptpress.com.cn/login"

# 获取验证码
sess = requests.Session()
verifyCodeUrl = "https://www.ptpress.com.cn//kaptcha.jpg?v=0.5120661510713358"  # 验证码地址
rq_code = sess.get(verifyCodeUrl)  # 获取验证码照片
with open("./tmp/code.png", "wb") as f:  # "wb"以二进制写的方式打开
    f.write(rq_code.content)

#将验证码写进来
verifyCode = "*****"

data = {
    "username": "******",  # 用户名
    "password": "******",  # 密码
    "verifyCode": verifyCode  # 验证码
}

rq = sess.post(url, data=data)

# 查看是否登陆
rq.status_code
rq.url  # 返回主页面而不是登录页面的网址即成功登陆


3.使用表单登录的注意事项

所有代码需在同一个会话中执行 


使用Cookie登陆方式实现模拟登陆

 

# 使用Cookie模拟登录
cookie = "*******************************************************"
Cookies = {}
# 对cookie进行分割
for i in cookie.split(";"):  # 以分号进行分割
    key, value = i.split("=")  # 以=进行分割
    Cookies[key] = value

host = "https://www.ptpress.com.cn/"
rq = requests.get(host, cookies=Cookies)  # 以登陆状态获取目标网站信息


使用selenium模拟登录

# 使用selenium模拟登录
from selenium import webdriver
host = "https://www.ptpress.com.cn/"
driver = webdriver.Chrome()
driver.get(host)

driver.page_source  # 获取网页源码

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值