公司需要每天提交动态,其实类似于打卡,但是跟打卡的意义不同,不过无所谓了,其实跟打卡的道理是完全一样的。这个提交动态就是登录公司的项目管理系统,然后选择相应的项目,然后点击一个按钮提交一下即可。提交这个动态,可以一次提交两天的,也就是今天除了可以提交今天的以外,还可以把明天的提交了,这样明天就可以不提交了。当然,到了明天,可以再提交下一天的,因为当天的被前一天提交过了,当然也可以再提交一遍。如果忘记的话,公司会打电话或发短信提醒,有一次我就忘记了。后来为了省事,就写了一个Python的脚本来进行提交动态。
代码不长,直接贴代码吧!
import urllib import urllib2 import cookielib hosturl = ‘http://xxxx/yyyy/login.jsp‘ cj = cookielib.LWPCookieJar() cookie_support = urllib2.HTTPCookieProcessor(cj) opener = urllib2.build_opener(cookie_support, urllib2.HTTPHandler) urllib2.install_opener(opener) h = urllib2.urlopen(hosturl) headers = { ‘User-Agent‘ : ‘Mozilla/5.0 (Windows NT 6.3; WOW64; rv:49.0) Gecko/20100101 Firefox/49.0‘, ‘Referer‘ : ‘http://xxxx/yyyy/index.jsp‘ } postData = { ‘login‘ : user, ‘passwd‘ : passwd, ‘Submit‘ : "提交" } postData = urllib.urlencode(postData) request = urllib2.Request(hosturl, postData, headers) response = urllib2.urlopen(request) text = response.read() day=‘http://xxxx/yyyy/RW/gcsxgdt2.jsp?RWDNO=111222&USERNO=111&DAYS=%BD%F1%C8%D5‘ day1=‘http://xxxx/yyyy/RW/gcsxgdt2.jsp?RWDNO=111222&USERNO=111&DAYS=%C3%F7%C8%D5‘ f = urllib2.Request(day) response = urllib2.urlopen(f) text = response.read() print text.decode(‘GB18030‘) print ‘==============================‘ f = urllib2.Request(day1) response = urllib2.urlopen(f) text = response.read() print text.decode(‘GB18030‘)
首先需要的是模拟登录,登录成功后,将上面两个连接直接访问一下即可。
在登录的部分,需要将hosturl修改一下,然后将headers和postData按照自己抓包(可以用抓包工具或者是firefox的插件)的数据进行修改即可。
时间: 2024-10-26 23:30:10