python获取sessionid

2020-01-08 16:52:48 浏览数 (1)

获取sessionid代码如下:

  1 #!/usr/bin/env python

  2 

  3 import cookielib

  4 from urllib2 import Request, build_opener, HTTPCookieProcessor, HTTPHandler

  5 import time ,urllib

  6 

  7 #cj用来保存访问过程中的cookie,用它来初始化opener,以后每次用

     #opener来访问url时,都会使用该cookie。这样每次请求的一些变量都

     #会相同,如:sessionid

  8 cj =  cookielib.CookieJar()

  9 opener = build_opener(HTTPCookieProcessor(cj),HTTPHandler)

 10 f = opener.open("http://10.23.51.20:8001/ok.html")

 11 html = f.read()

 12    

 13 print "The cookies are:"

 14 for cookie in cj:

 15     print cookie

 16 

 17 time.sleep(1)

 18 for i in range(10):

 19     f = opener.open("http://10.23.51.20:8001/ok.html")

 20     html = f.read()

 21     

 22     print "The cookies are:"

 23     for cookie in cj:

 24         print cookie

 25     time.sleep(10)

循环访问http://10.23.51.20:8001/ok.html十次,每次都打印出sessionid,输出结构显示每次的sessionid都是一样的。

但访问openstack的管理页面出现一个异常,搞得我纠结了一下午。例如它的url为:http://10.23.54.150:9696

。用该url来代替上面的url时,输出的sessionid每次都不一样。不知道是sessionid不同是真相还是相同是真相。

猜想:openstack的daskboard可能由于没有登录进去,导致没有存储session。所以每一次访问会新建session,并返回新的sessionid。

0 人点赞