我正在编写一个脚本来登录ATT Web门户以访问我的账单。我在处理身份验证时遇到困难。我的手动工作流程如下:
到目前为止,我的脚本如下:
import requests
from bs4 import BeautifulSoup
user = 'some_user@example.com'
password = 'pass'
session = requests.Session()
session.auth = (user, password)
try:
auth = session.post('https://www.att.com/my/#/login')
except Exception as e:
print(f"{' EXCEPTION ':#^150}")
print(e)
else:
print(auth)
print(BeautifulSoup(auth.text, features='html.parser').prettify())
try:
dev = session.get('https://www.att.com/my/#/viewBill')
except Exception as e:
print(f"{' EXCEPTION ':#^150}")
print(e)
else:
print(dev.text)
soup = BeautifulSoup(dev.text, features='html.parser')
print(soup.prettify())
我从print(auth)
得到的结果是<Response [401]>
。
我的脚本只应提示我输入一次SMS代码,因为需要在脚本上对用户名,密码和接收代码行进行硬编码。我知道如何对用户名和密码进行硬编码,而不是在接收代码的那一行。
如何修改脚本以成功验证网站并通过Python访问我的账单?