这是我的准则:
import time
import selenium
from selenium import webdriver
from selenium.webdriver.support.ui import Select
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
from selenium.webdriver.common.by import By
EXE_PATH = r'C:\Users\LENOVO\Downloads\geckodriver.exe'
driver = webdriver.Firefox(executable_path=EXE_PATH)
def login():
mail = 'myMail'
pw = 'myPassword'
driver.get('https://gmail.com')
email = driver.find_element_by_name('identifier')
email.send_keys(mail)
driver.find_element_by_id('identifierNext').click()
time.sleep(10)
password = driver.find_element_by_name('password')
password.send_keys(pw)
driver.find_element_by_id('passwordNext').click()
我该怎么办?请帮帮我,我只是一个新手和初学者。谢谢主人
该Google支持页面声明,由于以下安全原因,通过“使用自动化测试框架”的浏览器登录被禁用,Google建议使用基于浏览器的OAuth 2.0认证服务“使用Google登录”。
由于某些网站(如stackoverflow.com)允许您使用“使用Google登录”登录他们的服务,因此必须通过Google OAuth 2.0身份验证进行。这意味着这样做您也间接登录了您的Google帐户,因此您可以使用所有Google服务。
因此,您可以完全自动地登录到您的Google帐户,例如,通过使用Python脚本,通过在您的代码中执行以下操作:
这样,您就可以进入Gmail邮箱,而无需执行任何手动操作。
请记住在不同操作之间添加一些5s延迟,因为做得太快或太频繁会被StackOverflow识别为恶意自动操作,您可能会被阻止,您需要手动我不是机器人
验证
绕过Google自动化检测的方法是使用undetected_chromedriver
库。您可以使用 pip 安装未检测到的铬驱动程序来安装程序包
。一旦您的驱动程序对象被启动,您可以简单地使用硒来操作驱动程序。
# initiate the driver with undetetcted_chromedriver
import undetected_chromedriver.v2 as uc
driver = uc.Chrome()
# operate the driver as you would with selenium
driver.get('https://my-url.com')
# Example use of selenium imports to be used with the driver
from selenium.common.exceptions import NoSuchElementException
from selenium.webdriver.common.by import By
try:
driver.find_element(By.XPATH, '//*[@id="my-id"]').click()
except NoSuchElementException:
print("No Such Element Exception")
注意:Google的登录是一个弹出窗口,所以不要忘记将窗口句柄切换到弹出窗口以登录,然后切换回主窗口。
首先使用pip安装未检测到的chrome驱动程序。这是一个绕过Chrome安全并允许你进一步操作的库。
pip install undetected-chromedriver
然后,不要使用chrome驱动程序创建.exe
像驱动程序=web驱动程序。铬(r“铬驱动程序.exe”)
,使用您刚刚安装的库中的铬()
功能。
Python中的完整代码示例:
import undetected_chromedriver.v2 as uc
from time import sleep
username = 'example@gmail.com'
password ='password'
driver = uc.Chrome()
driver.delete_all_cookies()
driver.get('https://accounts.google.com/ServiceLogin')
sleep(2)
driver.find_element_by_xpath('//input[@type="email"]').send_keys(username)
driver.find_element_by_xpath('//*[@id="identifierNext"]').click()
sleep(2)
driver.find_element_by_xpath('//input[@type="password"]').send_keys(password)
driver.find_element_by_xpath('//*[@id="passwordNext"]').click()
sleep(2)
driver.get('https://gmail.com')
sleep(2)
我试图通过使用硒从收件箱下载附件来自动化gmail。但是,它向我显示了这个错误“此浏览器或应用程序可能不安全”。我环顾四周,发现OAuth将解决这个问题。但是,我不知道如何使用它,也不知道它是否是正确的工具。有人能帮我解决这个错误吗?OAuth是正确的工具吗?使用任何其他浏览器都会解决这个问题吗? 错误:此浏览器或应用可能不安全。了解更多信息尝试使用不同的浏览器。如果您已经在使用受支持的浏览器,则
我试过用Gmail或任何谷歌服务登录,但它显示以下“此浏览器或应用程序可能不安全”消息: 我还尝试在acc中启用不太安全的应用程序,但没有成功。然后我建立了一个新的谷歌账户,它和我一起工作。但不是和我以前的acc。 我该怎么解决这个问题 如何在正常的chrome浏览器(而不是由自动化软件控制的浏览器)中打开selenium<这是我的代码
我必须使用selenium脚本登录gmail帐户,但我收到了错误消息 正如从其他来源读到的,谷歌不允许使用自动化脚本登录 机器:MacOS编程语言:Java 有人知道怎么解决吗?
问题内容: 我正在尝试使用selenium登录到google,但不断收到错误消息“此浏览器或应用可能不安全”。 我用来登录的功能是: 我尝试使用chrome和firefox网络驱动程序,但均无法正常工作。我也尝试过这样做也没有帮助。 这使我认为登录页面也许可以检测到我在自动化环境中运行。我尝试过这种解决方案,该解决方案使该应用程序[无法在Web驱动程序中运行:网站可以检测到您何时在chromedr
我有一堆谷歌帐号,我需要在那里登录并从开发者控制台获取应用程序ID。在大约30个帐户中,我有3个帐户无法登录,并收到消息“您正试图从不允许我们保护您帐户安全的浏览器或应用程序登录。”输入登录名和密码后。使用手动启动的浏览器,我可以像往常一样登录到这个帐户 所有帐户登录共享相同的步骤: 1。打开登录页面。输入电子邮件。按“下一步”4。输入密码 5。按“下一步” 在此了解更多领先优势并提出可能的原因:
我正试图用selenium登录谷歌,但我一直收到一个错误:“这个浏览器或应用程序可能不安全。” 我用来登录的功能是: 这和https://stackoverflow.com/questions/59433453/unable-to-log-into-google-account-in-selenium-chrome-driver和https://stackoverflow.com/question