コード ```プログラミング初心者です。 ・seleniumを使い、下記の特定の要素を取得したいのですがエラーになってしまいます。 ・・・・selenium使用はスクロールをして取得するため ・**_2hAOMPRI7qeW以降の要素を取得するには、どうすればよいでしょうか?** ご教示いただけるとうれしいです。 ※とりあえずは、要素 _2jgEMnhQANtxを取得してからfindやreplaceなどを使って不要な情報を取り除いて対処してます。 ### 発生している問題・エラーメッセージ ・要素が見つからない ・テキストが見当たらない
エラーメッセージ
### 該当のソースコード ``` ■ヤフーショッピングの価格、送料箇所のコードです。 .<div class="_2jgEMnhQANtx" data-postage-beacon> . <p class="_1_rYNy1GQ5n- _3Z3ly613XmPi"> . <span class="_3-CgJZLU91dR">2,280</span> . <span class="_1i7P06OoLEn9">円</span> . </p> . <p class="_2hAOMPRI7qeW">+送料220円</p> . <p class="bacizFCDQePf"> . <span>6,000円以上購入で</span> . <span class="_1h3STCmLByVy">送料無料</span> . </p> </div> ``` ### 試したこと ```Python . for q in range(len(query_list)): . time.sleep(sec) . postages = [] . elms = browser.find_element_by_id("ss_yschsp") . elms.clear() . elms.send_keys(query_list[q],Keys.ENTER) . height = 1000 . while height < 11000: . browser.execute_script("window,scrollTo(0, {});".format(height)) . height += 1000 . print(height) . time.sleep(3) . get_info = browser.find_elements_by_class_name("_2W0PXaK-syIW") . for n in range(len(get_info)): # ◆ 試したこと_1 . postage = get_info[n].find_element_by_class_name("_2hAOMPRI7qeW").text # ◆ 試したこと_2 . postage = get_info[n].find_elements_by_css_selector('_2jgEMnhQANtx ._2hAOMPRI7qeW).text # ◆ 試したこと_3 . postage = get_info[n].find_elements_by_xpath('//div[@class="_2hAOMPRI7qeW"').text . postages.append(postage) ``` ### 補足情報(FW/ツールのバージョンなど) Python3.8.10 jupyter lab, VSCode ここにより詳細な情報を記載してください。
回答1件
あなたの回答
tips
プレビュー