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小游戏网站。相关推荐

  1. python爬虫登录网站_python爬虫学习,使用requests库来实现模拟登录4399小游戏网站。...

    1.首先分析请求,打开4399网站. image 右键检查元素或者F12打开开发者工具.然后找到network选项, image 这里最好勾选perserve log 选项,用来保存请求日志.这时我们 ...

  2. Python爬虫利器一Requests库的用法

    之前我们用了 urllib 库,这个作为入门的工具还是不错的,对了解一些爬虫的基本理念,掌握爬虫爬取的流程有所帮助.入门之后,我们就需要学习一些更加高级的内容和工具来方便我们的爬取.那么这一节来简单介 ...

  3. 从零开始写Python爬虫---1.1 requests库的安装与使用

    什么是爬虫? 爬虫本质上是模拟人浏览信息的过程,只不过他通过计算机来达到快速抓取筛选信息的目的.所以我们想要写一个爬虫,最基本的就是要将我们需要抓取信息的网页原原本本的抓取下来.这个时候就要用到req ...

  4. 网络爬虫学习3 - Requests库的七个主要方法、安全性问题与异常处理、反爬虫和Robots协议

    网络爬虫MOOC学习打卡 - 第三天 文章目录 网络爬虫MOOC学习打卡 - 第三天 一.Requests库主要方法解析 0.Requests库的七个主要方法 1.request()方法request ...

  5. python爬虫学习(十八)人人网cookie登录

    import requests from lxml import etree from codeClass import YDMHttp#封装打码平台代码 path = 'code.jpg' def ...

  6. python——爬虫学习——Beautiful Soup库的使用-(2)

    Beautiful Soup库 执行pip install beautifulsoup4安装Beautiful Soup库 Beautiful Soup库的简介 Beautiful Soup是一个可以 ...

  7. python爬虫学习笔记-requests基础

    爬虫初始 为什么要学习爬虫 之前在授课过程中,好多同学都问过我这样的一个问题:为什么要学习爬虫,学习爬虫能够为我们以后的发展带来那些好处?其实学习爬虫的原因和为我们以后发展带来的好处都是显而易见的,无 ...

  8. python爬虫学习(一) requests模块

    requests模块: python中原生的一款基于网络请求的模块,功能非常强大,简单便捷,效率极高.作用:模拟浏览器发请求. 如何使用:(requests模块的编码流程) 一指定url 一发起请求 ...

  9. Python爬虫开发:requests库的使用--session的使用

  10. Python爬虫开发:requests库的使用--https协议的问题解决

最新文章

  1. JETSON NANO 查看 CUDA 版本:NVCC -V 报错:BASH: NVCC: 未找到命令
  2. Numpy Axis
  3. python递归报错 RuntimeError: maximum recursion depth exceeded
  4. 【Error】Provider com.sun.xml.stream.ZephyrParserFactory not found
  5. 初见shell,设置端口参数
  6. java如何存储一个向量到一个矩阵的一个位置_SIMD数据并行(一)——向量体系结构...
  7. current_session_context_class
  8. 操作系统 读者-写者问题
  9. Centos7使用docke搭建openV
  10. DSP2812之定时器
  11. 搭建一个基于 Vue + Vant 的移动端项目模板
  12. emmc/ufs, sd
  13. Spark jars依赖问题
  14. yii2 aliases web.php,别名(Aliases) - Yii2 权威指南
  15. Vue下拉列表el-select二级联动效果
  16. java设计模式 之适配器模式
  17. laravel 5.5 The page has expired due to inactivity. Please refresh and try again
  18. wrcoef2函数_二维离散小波变换函数使用总结
  19. 数学连乘和累加运算符号_3,7,5之间加数学运算符号使结果等于8?
  20. XX市智慧环卫管理系统解决方案V1.0

热门文章

  1. android Launcher 自定义View 高仿hola一键清理效果
  2. 79.(cesium之家)cesium动态纹理-颜色
  3. linux与测试程序下载,Linux测试上行和下载速率
  4. 网络爬虫的基本结构是什么?如何建立网络爬虫抓取数据?
  5. ceph rbd mysql_Ceph实践之rbd
  6. Windows 启动jar程序
  7. Note: further occurrences of HTTP header parsing errors will be logged at DEBUG level.
  8. 使用Chrome调试JavaScript
  9. 关于数据埋点的认识以及在流量分析系统中的实际使用
  10. 刻录服务器系统光盘,系统光盘制作