模拟用户登录保存cookie,利用cookie访问

来源:互联网 发布:电脑软件设置密码 编辑:程序博客网 时间:2024/05/18 11:15

Shell

curl 'http://*******/login/' -c '/tmp/300' #生成cookie文件curl -d 'a=b&c=d' 'http://******/ajax/know/' -b '/tmp/300' #利用cookie访问


Python

#! -*- coding:utf-8 -*-'''模拟登录curl 'http://*******/login/' -c '/tmp/300' #生成cookie文件curl -d 'a=b&c=d' 'http://******/ajax/know/' -b '/tmp/300' #利用cookie访问'''import pycurlimport StringIOimport jsonimport sysdef initCurl():        c = pycurl.Curl()        c.setopt(pycurl.COOKIEFILE, "cookie_file_name")#把cookie保存在该文件中        c.setopt(pycurl.COOKIEJAR, "cookie_file_name")        c.setopt(pycurl.FOLLOWLOCATION, 1) #允许跟踪来源        c.setopt(pycurl.MAXREDIRS, 5)        return cdef GetDate(curl, url):        head = ['Accept:*/*',                'User-Agent:Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.11 (KHTML, like Gecko) Chrome/23.0.1271.97 Safari/537.11']        buf = StringIO.StringIO()        curl.setopt(pycurl.WRITEFUNCTION, buf.write)        curl.setopt(pycurl.URL, url)        curl.setopt(pycurl.HTTPHEADER,  head)        curl.perform()        the_page =buf.getvalue()        buf.close()        return the_pagedef PostData(curl, url, data):    head = ['Accept:*/*',            'User-Agent:Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.11 (KHTML, like Gecko) Chrome/23.0.1271.97 Safari/537.11']    buf = StringIO.StringIO()    curl.setopt(pycurl.WRITEFUNCTION, buf.write)    curl.setopt(pycurl.POSTFIELDS,  data)    curl.setopt(pycurl.URL, url)    curl.setopt(pycurl.HTTPHEADER,  head)    curl.perform()    the_page = buf.getvalue()    buf.close()    return the_pageGetDate(initCurl(),'http://********/login')p=PostData(initCurl(), 'http://********/post', 'a=b&c=d')print p



原创粉丝点击