web-dev-qa-db-ja.com

SeleniumおよびPython

Seleniumを使用してGmailアカウントにログインしたい。私はpython2.7を使用しています。エラーはありませんが、なんらかの理由でアカウントにログインできなかったとページに表示されていました。下のスクリーンショットをご覧ください。 screenshot

それは私のコードです:

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()

私は何をしなければなりませんか?私を助けてください、私は初心者で初心者です。ありがとうマスター

4
Ardo Rianda

これは、自動ログインの既知の問題のようです。

それを追求したい場合は、Gmailアカウントで安全性の低いアプリを有効にする必要があります。

https://myaccount.google.com/lesssecureapps

この設定は、次の場合には使用できない場合があります。

2段階認証が有効になっているアカウント:このようなアカウントでは、安全性の低いアプリへのアクセスのためにアプリケーション固有のパスワードが必要です。 G Suiteユーザー:管理者が安全性の低いアプリアカウントアクセスをロックしている場合、この設定は非表示になります。

1
Paulo Alves

このエラー画面...

couldnot_sign_you_in

... WebDriverがBrowsing Context、つまりBrowserセッションを認証できなかったことを意味します。


記事のRaphael Schaad デスクトップアプリでGoogleにサインインしようとすると、「このブラウザーまたはアプリはセキュリティで保護されていない可能性があります」というエラー 言及:

ユーザーが他のGoogleアカウントで同じアプリに問題なくログインできる場合、問題は特定のアカウントにあるはずです。

考えられる理由は、ユーザーがTwo Factor Authentificationを使用している唯一のアカウントです。


解決

このGoogleアカウントに対してTwo Factor Authentificationを無効にして、@ Testを実行します


tl; dr

サポートされているブラウザでサインイン

0
DebanjanB