如何通过登录要求手机验证?

问题描述 投票:0回答:1

我正在尝试使我的很多工作自动化,这需要我登录 SalesForce(一个销售管理程序)。因为我不想学习所有 API,所以我想通过 xpath 等在外部实现自动化。最大的问题是,每当我尝试登录 Salesforce 时,它都会识别出计算机正在进行登录,并要求我的手机提供验证码,这使得任何进一步的操作都绝对不可行。有人可以帮忙吗?

from selenium import webdriver
chromedriver = "/Users/sebastiendupont/Downloads/chromedriver"
driver = webdriver.Chrome(chromedriver)
driver.get("https://bus.my.salesforce.com/?ec=302&startURL=%2Fvisualforce%2Fsession%3Furl%3Dhttps%253A%252F%252Fbus.lightning.force.com%252Flightni`enter code here`ng%252Fpage%252Fhome")
xpath = '//*[@id="username"]'
box = driver.find_element_by_xpath(xpath)
box.send_keys('mygmail')
xpath2 = '//*[@id="password"]'
box2 = driver.find_element_by_xpath(xpath2)
box2.send_keys('mypassword')
box.submit()
python-3.x selenium
1个回答
0
投票

特意添加额外验证以增强安全性。您无法绕过电话验证。但是,如果您的应用程序允许您选择 Google Authenticator 来代替两因素身份验证,您可以使用您的代码生成 OTP。

这可以按如下方式完成

pip install pyotp
totp = TOTP("put secret key here")
token = totp.now()
print(token)
© www.soinside.com 2019 - 2024. All rights reserved.