前提・実現したいこと
seleniumを使いドロップダウンの中から、先月の値をクリックする為、を変数を用いてクリックする為
datetimeで当月の月を出して、その月に+1をしたものを変数にいれ選択しようとしたのですが、エラー
が返ってきます。
dt_now = datetime.datetime.now()
x = dt_now.month
x = x+1
x = str(x)
このコードを消してxの代わりに1~12の数字を入れてみた所、しっかりと洗濯することが出来ます。
変数を使用することはできないのでしょうか
そもそもコードの書き方が間違っているのでしょうか
ご回答よろしくお願い致します。
なお該当HPアドレスとID PASSは機密保持の為、消しております
発生している問題・エラーメッセージ
NoSuchElementException Traceback (most recent call last)
<ipython-input-56-3d3d2e7c0c62> in <module>
36 x = x+1
37 x = str(x)
---> 38 select_element.select_by_value("x")
~\anaconda3\lib\site-packages\selenium\webdriver\support\select.py in select_by_value(self, value)
85 matched = True
86 if not matched:
---> 87 raise NoSuchElementException("Cannot locate option with value: %s" % value)
88
89 def select_by_index(self, index):
NoSuchElementException: Message: Cannot locate option with value: x
エラーメッセージ
該当のソースコード
import datetime
element = browser.find_element_by_id("form:periodFromMonth")
select_element = Select(element)
dt_now = datetime.datetime.now()
x = dt_now.month
x = x+1
x = str(x)
select_element.select_by_value('x')
Pythonここに言語名を入力
ソースコード
from selenium import webdriver
import time
import pandas as pd
from selenium.webdriver.common.action_chains import ActionChains
browser = webdriver.Chrome(executable_path="C:/Users/suncare/chromedriver_win32/chromedriver.exe")
#browser.implicitly_wait(1)
browser.get("")
element = browser.find_element_by_id("form:corporation_id")
element.clear()
element.send_keys(120989)
element = browser.find_element_by_id("form:member_login_id")
element.clear()
element.send_keys("")
element = browser.find_element_by_id("form:password")
element.clear()
element.send_keys("")
browser_from = browser.find_element_by_id("form:logn_nochklogin")
#time.sleep(1)
browser_from.click()
browser_from = browser.find_element_by_xpath("/html/body/div[2]/div[1]/div[1]/ul/li[1]/ul/li[1]/a")
browser_from.click()
browser_from = browser.find_element_by_xpath("/html/body/div/div[2]/div/form/div[1]/div[2]/ul/li[6]/div/ul/li[2]/a")
browser_from.click()
browser_from = browser.find_element_by_xpath("/html/body/div/form/div/ul/li[7]/a/img")
browser_from.click()
browser_from = browser.find_element_by_xpath("/html/body/div/form/div/ul/li[7]/ul/li/a")
browser_from.click()
browser_from = browser.find_element_by_xpath("/html/body/div/div[2]/div/form/div[1]/div[8]/table/tbody/tr[2]/td[1]/a/span")
browser_from.click()
from selenium.webdriver.support.ui import Select
import datetime
element = browser.find_element_by_id("form:periodFromMonth")
select_element = Select(element)
dt_now = datetime.datetime.now()
x = dt_now.month
x = x+1
x = str(x)
select_element.select_by_value('x')
試したこと
変数の型が違うのかと思い型を色々変えてみたけれど駄目でした
補足情報(FW/ツールのバージョンなど)
Python3 anaconda Jupyter lab
ここにより詳細な情報を記載してください。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2021/01/08 14:01
2021/01/08 17:16
2021/01/11 13:47