前提
要素があるはずなのに、inputへの入力ができません。
どのようにすれば、入力できるでしょうか?
実現したいこと
inputへの入力をしたいです。
発生している問題・エラーメッセージ
selenium.common.exceptions.NoSuchElementException: Message: no such element: Unable to locate element: {"method":"xpath","selector":"//*[@id="login_form_emailAddress"]"}
該当のソースコード
python
1 print(f"driver.page_source:{print(driver.page_source)}") 2 driver.find_element_by_xpath('//*[@id="login_form_emailAddress"]').send_keys("メールアドレス") 3 driver.find_element_by_xpath('//*[@id="login_form_encryptedPasswd"]').send_keys("パスワード") 4 driver.find_element_by_xpath('/html/body/div[2]/div[2]/div/form/div[5]/div/button').click() 5 # ページが読み込まれるまで待機 6 wait.until(EC.presence_of_all_elements_located)
試したこと
xpath以外にも、idやnameで試しましたが、同じく要素が見つかりませんでした。
driver.page_sourceで見ると、下のようなソースコードが出てきます。
該当のページのソースコード
<!DOCTYPE html><html xmlns="http://www.w3.org/1999/xhtml"><head> <meta http-equiv="Content-Language" content="ja" /> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> <meta name="viewport" content="width=980" /> <meta name="vue-csrf-token" content="HDGvyunXrzUngUClIGKatGaewni7vYqOu57DyKCOOfY" /> <meta name="vue-route" content="" /> <meta name="description" content="" /> <meta name="author" content="" /> <meta http-equiv="refresh" content="1380" /> <meta http-equiv="Content-Style-Type" content="text/css" /> <link rel="stylesheet" href="/build/js/common.css?v=%asset_version%" /> <meta http-equiv="Content-Script-Type" content="text/javascript" /> <script async="" src="https://am.yahoo.co.jp/rt/?p=RBP6MCGVVI&label=&ref=https%3A%2F%2Faff.valuecommerce.ne.jp%2Fad%2FselectAdLink%3Fad_search_condition_form%255BadType%255D%3Dmylink%26ad_search_condition_form%255BadOid%255D%3D2614000&rref=&pt=&item=&cat=&price=&quantity=&r=1675067218.337761&pvid=atxyoq4ptjldijrtd2&_impl=prev"></script><script type="text/javascript" async="" src="https://www.google-analytics.com/plugins/ua/linkid.js"></script><script src="https://connect.facebook.net/signals/config/265243995539950?v=2.9.92&r=stable" async=""></script><script async="" src="https://connect.facebook.net/en_US/fbevents.js"></script><script type="text/javascript" async="" src="https://static.ads-twitter.com/uwt.js"></script><script type="text/javascript" async="" src="https://www.google-analytics.com/analytics.js"></script><script type="text/javascript" async="" src="https://www.googletagmanager.com/gtag/js?id=G-VK84XFLB71&l=dataLayer&cx=c"></script><script async="" src="//www.googletagmanager.com/gtm.js?id=GTM-TRF4H5"></script><script src="/build/js/common.js?v=%asset_version%"></script> <!-- Le HTML5 shim, for IE6-8 support of HTML elements --> <!--[if lt IE 9]> <script src="//html5shim.googlecode.com/svn/trunk/html5.js"></script> <![endif]--> <title>ログイン</title> <script src="/bundles/fosjsrouting/js/router.min.js?v=%asset_version%"></script> <script src="/js/routing?callback=fos.Router.setData"></script> <link rel="stylesheet" href="/build/js/header_main.css?v=%asset_version%" /> <link rel="shortcut icon" href="/favicon.ico?v=%asset_version%" /> <link rel="apple-touch-icon-precomposed" href="/apple-touch-icon-precomposed.png?v=%asset_version%" /> <link rel="apple-touch-icon" href="/apple-touch-icon.png?v=%asset_version%" /> <meta http-equiv="origin-trial" content="A751Xsk4ZW3DVQ8WZng2Dk5s3YzAyqncTzgv+VaE6wavgTY0QHkDvUTET1o7HanhuJO8lgv1Vvc88Ij78W1FIAAAAAB7eyJvcmlnaW4iOiJodHRwczovL3d3dy5nb29nbGV0YWdtYW5hZ2VyLmNvbTo0NDMiLCJmZWF0dXJlIjoiUHJpdmFjeVNhbmRib3hBZHNBUElzIiwiZXhwaXJ5IjoxNjgwNjUyNzk5LCJpc1RoaXJkUGFydHkiOnRydWV9" /><script type="text/javascript" async="" src="https://googleads.g.doubleclick.net/pagead/viewthroughconversion/862075254/?random=1675067216841&cv=11&fst=1675067216841&bg=ffffff&guid=ON&async=1&gtm=2wg1p0&u_w=1280&u_h=1696&hn=www.googleadservices.com&frm=0&url=https%3A%2F%2Faff.valuecommerce.ne.jp%2Fad%2FselectAdLink%3Fad_search_condition_form%255BadType%255D%3Dmylink%26ad_search_condition_form%255BadOid%255D%3D2614000&tiba=%E3%83%AD%E3%82%B0%E3%82%A4%E3%83%B3&auid=1514703922.1675067217&rfmt=3&fmt=4"></script><script type="text/javascript" src="https://b97.yahoo.co.jp/pagead/conversion_async.js"></script></head> <body data-spy="scroll" data-target=".subnav" data-offset="50" class="site-selector-body"> <div class="nav_upper container-fluid navbar-default"> <nav class="navbar navbar-fixed-top"> <!-- nav_upper --> <div class="nav_upper container-fluid navbar-default"> <div class="navbar-header"> <a class="navbar-brand" title="" data-ga-action="link-home-logo"> <img src="/img/logo.png" /> </a> </div> </div> </nav> </div> <!-- /nav_lower --> <div class="container-fluid main-content"> <script type="text/javascript"> document.cookie = 'I_do_Javascript=yes;PATH=/'; </script> <div class="row"> <div class="col-xs-8 col-xs-offset-2"> <h4> ログインしてください </h4> <p>ログイン後、目的のページに移動します。<br /><br />(ご利用中にこのページが表示された方へ)<br />一定時間システムのご利用がなかったため、自動的にログアウトしました。<br />引き続きご利用いただく場合には、再度ログインしてください。</p> </div> </div> <div class="row login_btn_bsp"> <div class="col-xs-8 col-xs-offset-2"> <form class="form-horizontal" action="/login/" method="post"> <input type="hidden" id="login_form__token" name="login_form[_token]" value="l24ql-JHLoCe88xlpTlaQ8P0bSUYSEcxszcc-5uImZg" /> <div id="err"> </div> <div class="form-group"> <label for="email"> <span>メールアドレス</span></label> <input type="email" id="login_form_emailAddress" name="login_form[emailAddress]" required="required" class="form-control" /> </div> <div class="form-group"> <label for="password"> <span>パスワード</span></label> <input type="password" id="login_form_encryptedPasswd" name="login_form[encryptedPasswd]" required="required" class="form-control" /> </div> <div class="form-group"> <label class="checkbox"> <input type="checkbox" id="login_form_remember" name="login_form[remember]" value="1" /> <span>次回から自動でログイン</span> </label> </div> <div class="form-group"> <div class="mt10"> <input type="hidden" name="path" value="http://aff.valuecommerce.ne.jp/ad/selectAdLink?ad_search_condition_form%5BadType%5D=mylink&ad_search_condition_form%5BadOid%5D=2614000" /> <button type="submit" class="btn btn-primary mr40">ログイン</button> <button type="button" class="btn_white btn_mbentry" onclick="dataLayer.push({'category':'as_login', 'action':'button_link', 'label':'新規登録', 'event':'event-gtm-click'}); window.open('/reg/affiliate_presignup');">無料会員登録</button> </div> </div> </form> </div> </div>
よろしくお願いいたします!!