4

私が行っている調査では、プログラムで React Web アプリにログインしようとしていますが、毎回ログイン フォームを使用することはできません。サイトに戻ってきたふりをする必要があります。

アプリはセッション Cookie を使用してログインしているユーザーを識別しませんが、IndexedDB と LocalStorage の値の組み合わせを使用します。

私のコードは次のようになります (プライベート メッセージで Web サイトの名前をお知らせします) が、正常にログインできません。Web サイトに 2 回目にアクセスすると、セレン ブラウザーはログインしません。間違っていますか?

cookies = {
   # All cookies set by the domain.
}

local_storage = {
   # All key value pairs found in the local storage
   # of a browser connected to the website.
}

driver = webdriver.Firefox()
driver.get(website_url)
time.sleep(5)
for key, value in local_storage.items():
    driver.execute_script("window.localStorage.setItem('%s', '%s');" % (key, value))

for key, value in cookies.items():
    driver.add_cookie({"name": key,
                       "value": value,
                       "domain":domain_url,
                       "path": "/"})

driver.execute_script(""" 
var db;
var request = window.indexedDB.open("keyval-store", 1);

request.onsuccess = function(event) {
db = request.result;
console.log("success: "+ db);
};

request.onupgradeneeded = function(event) {
    var db = event.target.result;
    var objectStore = db.createObjectStore("keyval");
    objectStore.add(value_found_in_the_IndexedDB,"reduxPersist:user");
    objectStore.add(another_value_found_in_the_IndexedDB, "reduxPersist:appSettings");
};
    """)
time.sleep(5)

driver.get(website_url)

time.sleep(1)
4

0 に答える 0