公式サイトから中国経済データを抜き取ろうとしていますが、ここで最後の行にElement Not Found例外が発生しています。私はstackoverflowを精査し、implicitly_waitを追加して問題の行をxpathからIDに切り替えようとしましたが、何も効果がありませんでした。何かご意見は?Selenium(Python)でWebスクレイピングが発生する要素が見つかりません
from selenium import webdriver
FAI = []
FAIinfra = []
FAIestate = []
path_to_chromedriver = '/Users/cargillsk/Downloads/chromedriver'
browser = webdriver.Chrome(executable_path = path_to_chromedriver)
browser.implicitly_wait(30)
url = 'http://www.cqdata.gov.cn/easyquery.htm?cn=A0101'
browser.get(url)
browser.find_element_by_id('treeZhiBiao_4').click()
browser.find_element_by_xpath('//*
[@id="mySelect_sj"]/div[2]/div[1]').click()
browser.find_element_by_xpath('//*
[@id="mySelect_sj"]/div[2]/div[2]/div[3]/input').clear()
browser.find_element_by_xpath('//*
[@id="mySelect_sj"]/div[2]/div[2]/div[3]/input').send_keys('last100')
browser.find_element_by_xpath('//*
[@id="mySelect_sj"]/div[2]/div[2]/div[3]/div[1]').click()
FAIinitial = browser.find_element_by_xpath('//*[@id="main-container"]/div[2]/div[2]/div[2]/div/div[2]/table/thead/tr/th[2]/strong').text
for i in range(2,102):
i = str(i)
FAI.append(browser.find_element_by_xpath('//*[@id="table_main"]/tbody/tr[1]/td[%s]' % i).text)
FAIinfra.append(browser.find_element_by_xpath('//*[@id="table_main"]/tbody/tr[4]/td[%s]' % i).text)
FAIestate.append(browser.find_element_by_xpath('//*[@id="table_main"]/tbody/tr[55]/td[%s]' % i).text)
browser.find_element_by_id("treeZhiBiao_3").click()
browser.find_element_by_id("treeZhiBiao_14").click()
トライリフォーカス 'あなたはstackoverの流れを精練 – redp
をbrowser.switch_to.active_element'、あなたが見つけた唯一のものは、暗黙の待ち時間であるとid XPathを変え、どのように明示的な待ち時間について、IFRAME? –
Gaurang、時々愚かに聞こえると私は謝罪しますが、私はPythonを自前で教えることが非常に難しいと思っています。私はほんの数週間でです。Re:あなたのコメント、暗黙の待ちがうまくいかない場合、前者はプログラム全体をカバーしているため明示的に待機しません。私はフレームのためのhtmlを見たが、何も見つかりませんでした。 Redp、あなたのヒントありがとうが、残念ながらそれは私のために働いていない。まだこれを理解することはできません。 – triplepla1