Python模拟自动登陆网页的三种方法!
2023-02-18 16:44:30 时间
一、利用Cookie实现登陆
1、先登陆后取网页中的Cookie加入到headers(标头),再用get方法获取网页内容
import requests
headers = {
"Cookie": "你登陆后网页的Cookie"
}
url = 'https://user.17k.com/ck/author/shelf?page=1&appKey=2406394919'
response = requests.get(url,headers=headers)
response.encoding = 'utf-8'
print(response.json())
2、获取Cookie的步骤, 打开开发者模式(按下f12),进入网络(network),并输入登陆账号密码
2)找到相应的文件,查看“请求标头”
运行结果:
二、利用from data的数据提交账号密码
1、先登陆然后找到登陆响应页面的from data的数据(即账号密码)用post提交账号密码
import requests
session = requests.session()
url = "https://passport.17k.com/ck/user/login"
data = {
"loginName":"你的账号",
"password":"你的密码"
}
session.post(url,data=data)
resp = session.get("https://user.17k.com/ck/author/shelf?page=1&appKey=2406394919")
print(resp.json())
找到data的步骤:
1)进入17k.com然后点击书架,进入登陆页面,输入账号密码
2)登陆后注意网络(network)里面的login文件并点击,找到负载(或者往下拉找到 from data)
3)把你的账号密码copy到代码里面来
运行结果:
三、Selenium模拟登陆
模拟人工输入账号、密码
from selenium import webdriver
import time
driver.get("https://user.17k.com/www/bookshelf/")
time.sleep(2)
#获取登陆模块的iframe
el_path = driver.find_element_by_xpath('/html/body/div[4]/div/div/iframe')
#进去该iframe
driver.switch_to.frame(el_path)
#进入成功后,输入账号密码以及勾选同意并点击登陆
driver.find_element_by_xpath('//dd[@class="user"]/input').send_keys('你的账号')
driver.find_element_by_xpath('//dd[@class="pass"]/input').send_keys('你的密码')
#勾选同意
driver.find_element_by_xpath('//*[@id="protocol"]').click()
#点击登陆
driver.find_element_by_xpath('//dd[@class="button"]/input').click()
注意事项:
1、下载chrome浏览器
2、下载对应版本的Chromedriver,不对应就会出bug
3、一定先查看需要操作的页面元素是否有一层iframe框架(可以在页面元素中ctrl+f输入iframe或frame搜索),不然找不到元素,操作不了。
4、XPath路径可以直接复制网页里面的
相关文章
- Python格式化输出
- PHP+Python,轻量维护超轻松
- Python免杀过360
- Python开发Brup插件检测SSRF漏洞和URL跳转
- python写一个能变身电光耗子的贪吃蛇
- Python分布式爬虫框架Scrapy 打造搜索引擎(四) - 爬取博客网站
- 万能调试|Python Scrapy框架HTTP代理的配置与调试
- 【好书推荐】《Python黑魔法指南》-附高清PDF版
- C、C++、Java到Python,编程入门学习什么语言好?
- Python 安装
- Python 3.11正式版来了,比3.10快10-60%,官方:这或许是最好的版本
- 基于Python的OpenCV关于色彩空间与通道的操作
- 2023PyCharm激活,码上使用,最新可用,Python快速使用
- 独家 | 使用python马尔科夫链方法建模星巴克等待时长
- 解放双手,python实现自动刷抖音短视频
- 用Python破解压缩包解压密码代码
- Python快速爬取车标网图片,以后不要说这什么车你不认识了!
- 抖音上超好听的神曲音乐,Python教你一次性下载
- 基于Atlas 200 DK的原版YOLOv3(基于Darknet-53)实现(Python版本)
- Python大神编程常用4大工具,你用过几个?