python利用本地保存cookies文件登录调取api

#!/usr/bin/python #coding=utf-8 import urllib2,urllib import cookielib import json import calendar

cookie=cookielib.MozillaCookieJar()#声明一个CookieJar对象实例来保存cookie cookie.load('/Users/momo/Downloads/cookies.txt',ignore_discard=False,ignore_expires=False) class Get_report(object): def init(self):

    pass
def get_days(self,y):
    monthRange = calendar.monthrange(y, m)####第一个元素是所查月份的第一天对应的是星期几(0-6),第二个元素是这个月的天数
    return monthRange
def  get(self):
    url = 'https://hubble.******.com/deptReadRate/query.do?'
    data = {
        "tab": "readRate",
        "rStartTime": "2017-%s-%s 08:00:00" %(m,st),
        "rEndTime":   "2017-%s-%s 00:00:00" %(m,et),
        "deptName":   "运维组",
        "isRecord":   "true",
        "pathName":   "/alarm.do"
    }
    get_url = url + urllib.urlencode(data)
    try:
        response = urllib2.Request(get_url)
        opener = urllib2.build_opener(urllib2.HTTPCookieProcessor(cookie))
        result = urllib2.urlopen(response)
        cont = json.loads(result.read())
        d = json.dumps(data["rStartTime"]) + '  ' + json.dumps(cont['result']['data'][0]['directorCount'])   + '       ' + json.dumps(cont['result']['data'][0]['readCount']) + '     ' +  json.dumps(cont['result']['data'][0]['rate'])
        return d
    except:
        print 'wrong'

def main(y=2017,m=1): get_report = Get_report() month = get_report.get_days(y) print month global st,et for i in range(1, int(month[1]) + 1):

    st = i
    et = i + 1
    cont = get_report.get()
    print cont
    if cont:
        with open("/Users/momo/Downloads/bao.txt", 'a+') as f:
            f.write(cont + '\n')

if name=='main': for m in range(1, 2): if m < 10: '0{}'.format(m) main(2017,m)

转载于:https://my.oschina.net/u/1775013/blog/1591825

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值