当服务器限制用户一次只能session, 使用下面
except AttributeError:
getrecord().ncirecord()
共用之前的session:
<requests.sessions.Session object at 0x7f25c1d38be0>
<requests.sessions.Session object at 0x7f25c1d38be0>
# -*- coding:utf-8 -*-
import requests
import re
from http.cookiejar import CookieJar
import json
from bs4 import BeautifulSoup
import datetime, pytz
import urllib3
import time
urllib3.disable_warnings(urllib3.exceptions.InsecurePlatformWarning)
urllib3.disable_warnings(urllib3.exceptions.InsecureRequestWarning)
s = requests.session()
s.cookies = CookieJar()
print(s)
user = "she**@cn.ibm.com"
passwd = "******"
class weblogin():
def login(self):
url = "https://*****.extnet.ibm.com/sim/signin"
param = {}
param["email"] = user
param["password"] = passwd
response = s.post(url, data=param, verify=False)
return response
class getrecord():
def __init__(self):
self.response = weblogin().login()
self.url = "https://******.extnet.ibm.com/sim/non-compliance-list"
self.siouturl = "https://****.extnet.ibm.com/sim/sign-out"
def ncirecord(self):
try:
html = s.get(self.url, verify=False).text
soup = BeautifulSoup(html, "html.parser")
#s.get(self.siouturl, verify=False)
tab = soup.find("table").find("tbody").find_all("tr")
ncilist = []
for i in tab:
NCI = i.find_all("td")
Record_Id = NCI[0].get_text()
Target_Dt = NCI[7].get_text()
Rec_Type = NCI[1].get_text()
Abstract = NCI[6].get_text()
Owner = ""
Acct_Alias = NCI[9].get_text()
Platform = ""
Change_Number = ""
Status_Update = ""
Rec_Status = NCI[2].get_text()
Advisory_ID = ""
Open_Dt = NCI[5].get_text()
Severity_Desc = NCI[4].get_text()
Applicability = ""
secfixdb = ""
ncirecord = [Record_Id, Target_Dt, Rec_Type, Abstract, Owner, Acct_Alias, Platform, Change_Number, Status_Update, Rec_Status, Advisory_ID, Open_Dt, Severity_Desc, Applicability, secfixdb]
ncilist.append(ncirecord)
print(ncilist)
return ncilist
except AttributeError:
getrecord().ncirecord()
getrecord().ncirecord()
使用下面的except,
except AttributeError:
url = "https://*****.extnet.ibm.com/sim/signin"
param = {}
param["email"] = user
param["password"] = passwd
s.post(url, data=param, verify=False)
print(s)
self.ncirecord()
>>>
得到的也是共用之前的session
<requests.sessions.Session object at 0x7f3650c7bdd8>
<requests.sessions.Session object at 0x7f3650c7bdd8>
# -*- coding:utf-8 -*-
import requests
import re
from http.cookiejar import CookieJar
import json
from bs4 import BeautifulSoup
import datetime, pytz
import urllib3
import time
urllib3.disable_warnings(urllib3.exceptions.InsecurePlatformWarning)
urllib3.disable_warnings(urllib3.exceptions.InsecureRequestWarning)
s = requests.session()
s.cookies = CookieJar()
print(s)
user = "ssdfh@cn.**.com"
passwd = "******"
class weblogin():
def login(self):
url = "https://*****.extnet.ibm.com/sim/signin"
param = {}
param["email"] = user
param["password"] = passwd
response = s.post(url, data=param, verify=False)
return response
class getrecord():
def __init__(self):
self.response = weblogin().login()
self.url = "https://****.extnet.ibm.com/sim/non-compliance-list"
self.siouturl = "https://*****.extnet.ibm.com/sim/sign-out"
def ncirecord(self):
try:
html = s.get(self.url, verify=False).text
soup = BeautifulSoup(html, "html.parser")
#s.get(self.siouturl, verify=False)
tab = soup.find("table").find("tbody").find_all("tr")
ncilist = []
for i in tab:
NCI = i.find_all("td")
Record_Id = NCI[0].get_text()
Target_Dt = NCI[7].get_text()
Rec_Type = NCI[1].get_text()
Abstract = NCI[6].get_text()
Owner = ""
Acct_Alias = NCI[9].get_text()
Platform = ""
Change_Number = ""
Status_Update = ""
Rec_Status = NCI[2].get_text()
Advisory_ID = ""
Open_Dt = NCI[5].get_text()
Severity_Desc = NCI[4].get_text()
Applicability = ""
secfixdb = ""
ncirecord = [Record_Id, Target_Dt, Rec_Type, Abstract, Owner, Acct_Alias, Platform, Change_Number, Status_Update, Rec_Status, Advisory_ID, Open_Dt, Severity_Desc, Applicability, secfixdb]
ncilist.append(ncirecord)
print(ncilist)
return ncilist
except AttributeError:
url = "https://****.extnet.ibm.com/sim/signin"
param = {}
param["email"] = user
param["password"] = passwd
s.post(url, data=param, verify=False)
print(s)
self.ncirecord()
getrecord().ncirecord()