質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
87.20%
HTML5

HTML5 (Hyper Text Markup Language、バージョン 5)は、マークアップ言語であるHTMLの第5版です。

Python

Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

selenium

Selenium(セレニウム)は、ブラウザをプログラムで作動させるフレームワークです。この原理を使うことにより、ブラウザのユーザーテストなどを自動化にすることができます。

解決済

変数リストに2つ変数が入ってるのにfor文で1つ文処理してエラーが出る

mi_chan613
mi_chan613

総合スコア13

HTML5

HTML5 (Hyper Text Markup Language、バージョン 5)は、マークアップ言語であるHTMLの第5版です。

Python

Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

selenium

Selenium(セレニウム)は、ブラウザをプログラムで作動させるフレームワークです。この原理を使うことにより、ブラウザのユーザーテストなどを自動化にすることができます。

1回答

0評価

0クリップ

705閲覧

投稿2022/01/15 03:01

python超初心者です。
商品検索から、商品を選択して数量入力画面に移行し、カートに追加する処理をしてます。
商品が1つのときは、うまくいきますが、商品が2つ以上になるとエラーで止まります。

python

for scode,suryo in zip(shohin_list,suryo_list): search = driver.find_element_by_id("searchInput") search.send_keys(scode) # 検索ワードを送信する search.send_keys(Keys.ENTER) print("商品検索結果") #検索結果からURLを取得 class_group = driver.find_elements_by_class_name('showcaseItemsImg') # 検索結果のリンクを抽出 for elem in class_group: driver.get(elem.find_element_by_tag_name('a').get_attribute('href')) print("画面移行") #数量を入れる texts = driver.find_element_by_name("item_list[1][item_num]") texts.clear() texts.send_keys(suryo) print("数量を入れる") #カートに入れるをクリック element = getElement('.btnType01.btnColor01.addToCartBtn.btnEffects.flywheel_cart_event', 10, 3) element.click() print("カートに入れるクリック") #このサプライヤーの商品を注文するをクリック element = getElement('.orderAdvanceBtn.btmMgnSet3', 10, 3) element.click() print("このサプライヤーの商品を注文する")

商品が2つあるのに、1つ処理して、「このサプライヤーの商品を注文する」画面で止まります。

エラーは、

VSCode

Exception in Tkinter callback Traceback (most recent call last): File "C:\Users\mi-chan\AppData\Local\Programs\Python\Python310\lib\tkinter\__init__.py", line 1921, in __call__ return self.func(*args) File "c:\Users\mi-chan\Documents\ひまわり\PS自動操作\PSauto.py", line 161, in btnURL_click search.send_keys(scode) # 検索ワードを送信する File "C:\Users\mi-chan\AppData\Local\Programs\Python\Python310\lib\site-packages\selenium\webdriver\remote\webelement.py", line 540, in send_keys self._execute(Command.SEND_KEYS_TO_ELEMENT, File "C:\Users\mi-chan\AppData\Local\Programs\Python\Python310\lib\site-packages\selenium\webdriver\remote\webelement.py", line 710, in _execute return self._parent.execute(command, params) File "C:\Users\mi-chan\AppData\Local\Programs\Python\Python310\lib\site-packages\selenium\webdriver\remote\webdriver.py", line 424, in execute self.error_handler.check_response(response) File "C:\Users\mi-chan\AppData\Local\Programs\Python\Python310\lib\site-packages\selenium\webdriver\remote\errorhandler.py", line 247, in check_response raise exception_class(message, screen, stacktrace) selenium.common.exceptions.StaleElementReferenceException: Message: stale element reference: element is not attached to the page document (Session info: chrome=97.0.4692.71) Stacktrace: Backtrace: Ordinal0 [0x002A6903+2517251] Ordinal0 [0x0023F8E1+2095329] Ordinal0 [0x00142848+1058888] Ordinal0 [0x00144F44+1068868] Ordinal0 [0x00144E0E+1068558] Ordinal0 [0x00145070+1069168] Ordinal0 [0x0016DE59+1236569] Ordinal0 [0x0016DF34+1236788] Ordinal0 [0x0016666D+1205869] Ordinal0 [0x001864D3+1336531] Ordinal0 [0x00163A36+1194550] Ordinal0 [0x001865BA+1336762] Ordinal0 [0x00195BBF+1399743] Ordinal0 [0x0018639B+1336219] Ordinal0 [0x001627A7+1189799] Ordinal0 [0x00163609+1193481] GetHandleVerifier [0x00435904+1577972] GetHandleVerifier [0x004E0B97+2279047] GetHandleVerifier [0x00336D09+534521] GetHandleVerifier [0x00335DB9+530601] Ordinal0 [0x00244FF9+2117625] Ordinal0 [0x002498A8+2136232] Ordinal0 [0x002499E2+2136546] Ordinal0 [0x00253541+2176321] BaseThreadInitThunk [0x75F8FA29+25] RtlGetAppContainerNamedObjectPath [0x76FE7A9E+286] RtlGetAppContainerNamedObjectPath [0x76FE7A6E+238] (No symbol) [0x00000000] [6984:15444:0115/114240.091:ERROR:chrome_browser_main_extra_parts_metrics.cc(227)] START: ReportBluetoothAvailability(). If you don't see the END: message, this is crbug.com/1216328. [6984:15444:0115/114240.091:ERROR:chrome_browser_main_extra_parts_metrics.cc(230)] END: ReportBluetoothAvailability() [6984:15444:0115/114240.091:ERROR:chrome_browser_main_extra_parts_metrics.cc(235)] START: GetDefaultBrowser(). If you don't see the END: message, this is crbug.com/1216328. [6984:7504:0115/114240.091:ERROR:device_event_log_impl.cc(214)] [11:42:40.097] USB: usb_device_handle_win.cc:1050 Failed to read descriptor from node connection: システムに接続されたデバイスが機能していません。 (0x1F) [6984:7504:0115/114240.091:ERROR:device_event_log_impl.cc(214)] [11:42:40.098] USB: usb_device_handle_win.cc:1050 Failed to read descriptor from node connection: システムに接続されたデバイスが機能していません。 (0x1F) [6984:15444:0115/114240.109:ERROR:chrome_browser_main_extra_parts_metrics.cc(239)] END: GetDefaultBrowser() [6584:14008:0115/114425.856:ERROR:gpu_init.cc(457)] Passthrough is not supported, GL is disabled, ANGLE is [1888:13612:0115/114428.246:ERROR:gpu_init.cc(457)] Passthrough is not supported, GL is disabled, ANGLE is

です。

どうぞよろしくお願いいたします。

良い質問の評価を上げる

以下のような質問は評価を上げましょう

  • 質問内容が明確
  • 自分も答えを知りたい
  • 質問者以外のユーザにも役立つ

評価が高い質問は、TOPページの「注目」タブのフィードに表示されやすくなります。

気になる質問をクリップする

クリップした質問は、後からいつでもマイページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

teratailでは下記のような質問を「具体的に困っていることがない質問」、「サイトポリシーに違反する質問」と定義し、推奨していません。

  • プログラミングに関係のない質問
  • やってほしいことだけを記載した丸投げの質問
  • 問題・課題が含まれていない質問
  • 意図的に内容が抹消された質問
  • 過去に投稿した質問と同じ内容の質問
  • 広告と受け取られるような投稿

評価を下げると、トップページの「アクティブ」「注目」タブのフィードに表示されにくくなります。

まだ回答がついていません

会員登録して回答してみよう

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
87.20%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問

同じタグがついた質問を見る

HTML5

HTML5 (Hyper Text Markup Language、バージョン 5)は、マークアップ言語であるHTMLの第5版です。

Python

Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

selenium

Selenium(セレニウム)は、ブラウザをプログラムで作動させるフレームワークです。この原理を使うことにより、ブラウザのユーザーテストなどを自動化にすることができます。