公司最近搞了个上网认证系统.每天开机要连上网络都要登录一下.

一直听说python啥事都能干,说得我这个美工心痒痒.

装好python,搜了一些教程,说简单的post发送就能搞定,

再往下,了解到了post需要requests这个东西.

还是搜索,知道怎么装了,跳过写hello world这一步,直接把网上搜索的代码往IDE里一贴然后运行

>>>当当当当...当然是各种红色英文字了

对于一个只接触过css的美工来说,代码太难了

但是我不是一般的美工,我是一个机灵的美工.

经过不倦的copy,试运行,我还是没能写出一个简简单单就能搞定的python代码.

我还是老老实实的每天登录一遍那个认证,有记住密码功能似乎没那么麻烦.

然而,一种不认命的念头始终在我登录认证的时候浮现.

于是我又操起了python IDLE窗口,打开"Requests: 让 HTTP 服务人类"

从头开始这个简单而又神圣的目标.

很多教程都告诉我们怎么在浏览器的调试模式下找到"那个url",对,就是那个url

对requests来说,这应该是第一要解决的任务.

我们公司这个认证系统的post地址是写在js文件中,仔细找基本上能在代码行中搜索到.

但那对我太难了,

总到来说,我找到了这个url,但不是调试模式下找到的,我用了Charles这个工具,

大佬们用来抓包的,我粗略了解它的用法.打开它,然后点击认证系统上的登录按钮,

charles里就出现了一个新的地址,不消说,它应该是那个url了.

于是我开始写post方法了:

import requestsurl = 'http://180.--.-.--/ac_portal/login.php'r = requests.post(url)

我也用过get.但我觉得看长相就不应该用get

运行....! shell窗口出现了从未见过的空白景象.

我不知道发生了什么,但我觉得它没出错了.

print(r)一下.

<Response [404]>

404的含义就是url正确,但是找不到文件.请忽略这个,因为找到这个也不是我的目的.

解决登录的目的应该是发送用户名和密码给某个地址,然后它返回登录成功就可以了.

我对比了charles中用认证系统登录和用我python Post过去的结果,

它们的区别在于我这个代码没有带一个form过去.

form里面正是我填的用户名和密码

之后我尝试了网上搜索的各种方法,

什么url后面带参数,最后搞明白要用data.

import requestsurl = 'http://180.--.-.--/ac_portal/login.php'data = {'opr':'pwdLogin','userName':'你的用户名','pwd':'你的密码','rememberPwd':'0'}#反正这里一堆参数或多或少,看原本页面上发送的form字段有哪些就行.r = requests.post(url,data)

运行.....成功!

print(r)

返回<Response [200]>

事情解决的很突然,还有点不习惯.反正大概就这四行代码就搞定了.

有看别人写的要加什么header什么的,我也加过,不加一样可以用.

然后把文件拖到开机启动文件夹.每次自动运行.

曾经在登录页面心里浮现的想法(懒惰的想法)就这么实现了,果然程序员就是牛逼,可以用工具帮自己干活.

用python脚本4行代码实现自动登录上网认证系统相关推荐

  1. Python百日百行代码挑战-day8,day9,day10,游戏实战系列-五子棋

    Python百日百行代码挑战-day8,day9,day10,游戏实战系列-五子棋 写在前面 需要用到的工具包和参考 游戏设定 初始化 切换下棋方 判断五子连珠(核心) 鼠标点击流程事件 成品展示 打 ...

  2. 【Python】Python脚本命令行解析

    Python脚本命令行解析 argparse 模块 使用 argparse 模块可以方便的编写出友好的命令行接口.程序定义需要的参数,然后 argparse 将从sys.argv解析出那些参数.arg ...

  3. python脚本实现将代码中的中文翻译为其他语言

    python脚本实现将代码中的中文翻译为其他语言 如果我们写的代码中带有中文的字符提示,现在要将其翻译成为其他国家的语言,在没有做多国语言配置的情况下只能自己手动复制翻译.这种机械重复性动作完全可以交 ...

  4. 设置WebStorm像VSCode一样每行代码结尾自动格式化加入“;”分号(JavaScript、TypeScript格式化)

    Ctrl+Shift+S→编辑器→Code Style→JavaScript或TypeScript→Punctuation 1.每行代码结尾自动加上;分号: Use(下拉框选Use)semiconlo ...

  5. python皮卡丘编程代码_再接再厉,用python编程13行代码解方程组(纯字符)

    因为是示例为主,我们将方程组限制在二元一次方程组:x,y两个变量,两个方程.类似这样: 每个方程有两个变量,x和y,形式为:ax+by+c=d 由于这次有了两个方程,我们提取参数的代码就适合提炼为一个 ...

  6. Python简单几行代码实现黑客电影镜头屏幕画面

    Python简单几行代码实现黑客电影镜头屏幕画面 通过几行简单的Python代码实现炫酷的数据流动效果 一.Python版本:Python3 二.操作示范 为了显得更加牛逼 逼真,通常不会直接运行源代 ...

  7. 【python】20行代码实现有道翻译api接口调用

    文章目录 1. 目标站点 2. 完整代码 3. 测试样例 3.1. 测试样例Ⅰ(汉译英) 3.2. 测试样例Ⅱ(英译汉) 4. 调用文档 4.1. 接口地址 4.2. 请求方法 4.3. 请求参数 4 ...

  8. 教你用python实现34行代码爬取东方财富网信息,爬虫之路,永无止境!!

    教你用python实现34行代码爬取东方财富网信息,爬虫之路,永无止境!! 代码展示: 开发环境: windows10 python3.6 开发工具: pycharm weddriver 库: sel ...

  9. 【python】15行代码实现猫脸检测(opencv)

    文章目录 1. 项目简介 2. 项目地址 3. 依赖模块 4. 完整代码 5. 必要组件 5.1. haar级联特征分类器(精度高) 5.2. lbp级联特征分类器(速度快) 6. 成果展示 6.1. ...

最新文章

  1. 配置apache、php、mysql之间的关系
  2. python 查找算法_python快速查找算法应用实例
  3. 服务器多个网站开启quarz,GitHub - WuLex/QuartzSynchroData: 多个不同站点服务器数据同步到总服务器(数据中心)...
  4. python PIP包管理工具安装
  5. Vigenère密码(Day 1)详解
  6. ArcGIS Pro地图制图之符号化和地图标注
  7. 服务器16g内存设置多少虚拟,电脑需要设置虚拟内存么(16g虚拟内存设置多少合适)...
  8. x265 HEVC编码器,基于x264 介绍
  9. [欧洲之行]比利时布鲁塞尔
  10. 台式电脑有哪些零件组成 台式电脑主件的形象解释
  11. DeFi总锁仓金额突破36亿美元, OKEx赋能DeFi大盘点
  12. 4g状态显示微信未连接服务器,我手机4G网是一直开着的,为什么登录微信确显示未连网!而且微信消息不提醒,但是打开后消息就出来了...
  13. 后级功放机与单声道功放机的功能有哪些区别?
  14. 数据结构6:栈的应用(十进制转化为二进制)
  15. NOJ 1434 Fence (皮克定理)
  16. 数据库-Navicat连接SQLserver报错:未发现数据源名称并且未指定默认驱动程序
  17. c语言情书大赛,计算机科学与技术学院“C语言情书大赛”
  18. 我是如何从头开始写一篇顶级论文的
  19. 舞台音效控制软件_苹果舞台现场演奏音效控制工具 MainStage 3 v3.3.1
  20. 软件架构的发展及研究现状

热门文章

  1. 疯狂的订餐系统-软件需求分析挑战之旅-4
  2. 使用itchat开发某信群聊机器人-功能一瞥
  3. Connection reset by peer的原因
  4. 扩频码估计matlab,基于MATLAB扩频码设计仿真.ppt
  5. 人工智能系统(二):技术栈
  6. 人工智能管家离我们已不远
  7. 【微信小程序】打开微信内置的地图
  8. 机动车检测站收费管理软件 使用流程介绍
  9. ThreadLocal线程内部存储类
  10. Java——等差数列求和