python爬虫学习,使用requests库来实现模拟登录4399小游戏网站。
1.首先分析请求,打开4399网站。
右键检查元素或者F12打开开发者工具。然后找到network选项,
这里最好勾选perserve log 选项,用来保存请求日志。这时我们来先用我们的账号密码登陆一下,然后查看一下截获的请求
可以很清楚的看到这里有个login,而且这个请求是post请求,下拉查看一下Form data,也就是表单数据
可以很清楚的看到我们的刚才登录发送给服务器的表单数据,更重要的是,除了uername和password之外,所有的数据都是一成不变的,这意味着我们不需要解析网页的源码获得信息,只需要把用户名和密码提交上去就行,下面开始构建我们的代码。
1 import requests 2 #模拟登陆4399 成功 一定要灵活运用session()这个好东西 3 #这是我们要提交的表单 4 data={ 5 'loginFrom':'uframe', 6 'postLoginHandler':'default', 7 'layoutSelfAdapting':'true', 8 'externalLogin':'qq', 9 'displayMode':'popup', 10 'layout':'vertical', 11 'appId':'www_home', 12 'mainDivId':'popup_login_div', 13 'includeFcmInfo':'false', 14 'userNameLabel':'4399用户名', 15 'userNameTip':'请输入4399用户名', 16 'welcomeTip':'欢迎回到4399', 17 'username':'1252452801125', 18 'password':'1252452801' 19 } 20 headers={ 21 'User-Agent':'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.131 Safari/537.36' 22 } 23 url='http://ptlogin.4399.com/ptlogin/login.do?v=1' 24 session=requests.Session() 25 res=session.post(url=url,data=data,headers=headers) 26 res2=session.get(url='http://u.4399.com/user/info',headers=headers) #成功登陆以后,查看我们的用户数据 27 #这里把我们的请求结果保存到文件 28 f=open('4399.html','wb') 29 f.write(res2.content) 30 f.close()
运行起来,然后查看我们保存的html文件,
模拟登录成功! 这就是我们个人用户信息的源代码。
这个例子主要讲了requests 的post方法,用于post请求,还有很重要的session,用于维持会话,希望这个例子对大家能有所帮助,谢谢,
个人QQ:1252452801
转载于:https://www.cnblogs.com/williamsjay/p/10832841.html
python爬虫学习,使用requests库来实现模拟登录4399小游戏网站。相关推荐
- python爬虫登录网站_python爬虫学习,使用requests库来实现模拟登录4399小游戏网站。...
1.首先分析请求,打开4399网站. image 右键检查元素或者F12打开开发者工具.然后找到network选项, image 这里最好勾选perserve log 选项,用来保存请求日志.这时我们 ...
- Python爬虫利器一Requests库的用法
之前我们用了 urllib 库,这个作为入门的工具还是不错的,对了解一些爬虫的基本理念,掌握爬虫爬取的流程有所帮助.入门之后,我们就需要学习一些更加高级的内容和工具来方便我们的爬取.那么这一节来简单介 ...
- 从零开始写Python爬虫---1.1 requests库的安装与使用
什么是爬虫? 爬虫本质上是模拟人浏览信息的过程,只不过他通过计算机来达到快速抓取筛选信息的目的.所以我们想要写一个爬虫,最基本的就是要将我们需要抓取信息的网页原原本本的抓取下来.这个时候就要用到req ...
- 网络爬虫学习3 - Requests库的七个主要方法、安全性问题与异常处理、反爬虫和Robots协议
网络爬虫MOOC学习打卡 - 第三天 文章目录 网络爬虫MOOC学习打卡 - 第三天 一.Requests库主要方法解析 0.Requests库的七个主要方法 1.request()方法request ...
- python爬虫学习(十八)人人网cookie登录
import requests from lxml import etree from codeClass import YDMHttp#封装打码平台代码 path = 'code.jpg' def ...
- python——爬虫学习——Beautiful Soup库的使用-(2)
Beautiful Soup库 执行pip install beautifulsoup4安装Beautiful Soup库 Beautiful Soup库的简介 Beautiful Soup是一个可以 ...
- python爬虫学习笔记-requests基础
爬虫初始 为什么要学习爬虫 之前在授课过程中,好多同学都问过我这样的一个问题:为什么要学习爬虫,学习爬虫能够为我们以后的发展带来那些好处?其实学习爬虫的原因和为我们以后发展带来的好处都是显而易见的,无 ...
- python爬虫学习(一) requests模块
requests模块: python中原生的一款基于网络请求的模块,功能非常强大,简单便捷,效率极高.作用:模拟浏览器发请求. 如何使用:(requests模块的编码流程) 一指定url 一发起请求 ...
- Python爬虫开发:requests库的使用--session的使用
- Python爬虫开发:requests库的使用--https协议的问题解决
最新文章
- JETSON NANO 查看 CUDA 版本:NVCC -V 报错:BASH: NVCC: 未找到命令
- Numpy Axis
- python递归报错 RuntimeError: maximum recursion depth exceeded
- 【Error】Provider com.sun.xml.stream.ZephyrParserFactory not found
- 初见shell,设置端口参数
- java如何存储一个向量到一个矩阵的一个位置_SIMD数据并行(一)——向量体系结构...
- current_session_context_class
- 操作系统 读者-写者问题
- Centos7使用docke搭建openV
- DSP2812之定时器
- 搭建一个基于 Vue + Vant 的移动端项目模板
- emmc/ufs, sd
- Spark jars依赖问题
- yii2 aliases web.php,别名(Aliases) - Yii2 权威指南
- Vue下拉列表el-select二级联动效果
- java设计模式 之适配器模式
- laravel 5.5 The page has expired due to inactivity. Please refresh and try again
- wrcoef2函数_二维离散小波变换函数使用总结
- 数学连乘和累加运算符号_3,7,5之间加数学运算符号使结果等于8?
- XX市智慧环卫管理系统解决方案V1.0
热门文章
- android Launcher 自定义View 高仿hola一键清理效果
- 79.(cesium之家)cesium动态纹理-颜色
- linux与测试程序下载,Linux测试上行和下载速率
- 网络爬虫的基本结构是什么?如何建立网络爬虫抓取数据?
- ceph rbd mysql_Ceph实践之rbd
- Windows 启动jar程序
- Note: further occurrences of HTTP header parsing errors will be logged at DEBUG level.
- 使用Chrome调试JavaScript
- 关于数据埋点的认识以及在流量分析系统中的实际使用
- 刻录服务器系统光盘,系统光盘制作