利用python挽救心仪的女神,解决了她工作的烦恼

最近在业务办公区域对接需求的时候,发现了一位漂亮妹子的「苦恼」,简单来说就是她每天都得花一个多小时的时间去将整理好的数据录入到系统中。

小编推荐大家可以加我的扣扣群 735934841 ,免费领取Python学习资料

为什么是苦恼?

在进入正题前想聊下这位漂亮妹子「不要想多了,只是聊聊漂亮妹子的工作」,这位妹子虽然苦恼,但她做这样的事情已经一年多了,可谓毅力可嘉,有时候我就会觉得很奇怪,为什么不向产品提个需求,要求系统能支持批量导入的功能呢?

和漂亮妹子聊了下,原来曾几何时是提过类似的需求的,但因为优先级,上级重视度等等一系列问题,最后就不了了之了。

漂亮妹子一开始还比较有怨言的,久而久之也就麻木了,最后成为了一种习惯...

老实讲,对于这样的工作状态很不好,当你的工作逐步趋向于重复性操作时,你将很可能被替代。

于是,为了拯救这位漂亮妹子,利用pyhton搞了个脚本,能够自动读取excel中的数据提交表单,完成录入的操作,还提高了手动录入的准确性。

妹子惊呆了,奶茶双手奉上。

一些思路

其实类似这种录入系统,重复工作的场景真的有很多,有时候真的觉得很麻烦,尤其是遇到一些交互比较差,等待时间比较长的系统。

类似这种需求,基本上分这几个步骤:

分析页面

模拟登录

组装表单数据

循环提交

当然,你同时也要具备一些技能和知识:

python「以python举例,其他语言也可以实现」

http 协议

chrome调试「以chrome举例,其他浏览器也可以」

具体实现

由于是公司的系统,不太方便贴源码,这里记录下开发过程中的一些重点和坑。

首先是页面分析,这个就不多说了,利用好强大的Chrome就可以了。

这里重点说说模拟登录,往往这里是比较坑的,虽然内网系统相对来说比较简单,但还是碰到两种常用的登录校验模式。

一种是服务端会生成一个uuid的state,在提交登录时会校验传入的与服务端生成的是否一致。

这个时候你就要分析页面,通常会将state放在页面中

这样就比较容易了,利用python的Requests和BeautifulSoup来抓取并实现登录

session_requests=requests.session()

result=session_requests.get(login_url,headers=header)

tree=bs4.BeautifulSoup(result.text,'lxml')

state=tree.findAll('input',attrs={'name':'state'})[0]['value']

另一种是在登录时,前端将密码加密,加密后再进行提交,一开始没注意,坑了我一把,于是将这段代码翻译成python的写法

#密码加密

def deal_password(pwd):

key='asdrft745'

keylength=10

code=''

i=0

for item in pwd:

keyindex=i%keylength

code=code+chr(ord(item)^ord(key[keyindex:keyindex+1]))

i=i+1

bytesString = code.encode(encoding="utf-8")

return base64.b64encode(bytesString)

当你顺利模拟登录成功后,其实就已经成功过一大半了,后面无非就是组装数据,然后利用强大的Requests调用接口提交就可以了。

由于表单各不相同,代码也没什么好贴的,主要确认好接口数据格式,是form-data的,还是json的,做好相应的转换即可。

另外还是要伪造下header的,尤其是User-Agent,避免被误杀,或者被公司安全组查。

最后请求频次也需要注意下,千万不要用力过猛,把系统给搞挂了「虽然这种情况很少」。

最后的最后,贴下自己用到的模块,都是比较常用的,网上也有一大堆的说明教程,有兴趣的同学可以自行实战下,创新工作,告别重复劳动。

女神看完我的操作都惊呆了,以后再也不用花时间重复录入数据了,奶茶双手奉上啊,无形中为自己的形象分添色了不少,哈哈。

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 213,014评论 6 492
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 90,796评论 3 386
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 158,484评论 0 348
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 56,830评论 1 285
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 65,946评论 6 386
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 50,114评论 1 292
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 39,182评论 3 412
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 37,927评论 0 268
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,369评论 1 303
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 36,678评论 2 327
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 38,832评论 1 341
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 34,533评论 4 335
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 40,166评论 3 317
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 30,885评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,128评论 1 267
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 46,659评论 2 362
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 43,738评论 2 351

推荐阅读更多精彩内容