そのため、python splinter ライブラリを使用して Web アプリをテストしています。要素が存在するかどうかを確認し、それを操作するために手動でそれぞれを見つけているときに、実行している問題が発生します。
問題は、入力リストが 4 項目以上になり、要素が存在しない場合に実行されると、完了するまでに 12 秒以上かかることです。
また、wait_time=1 を設定してみましたが、入力リストが 10 より大きい場合、要素がページのどこにも存在しない場合、合計で 10 回かかります。
for i in inputs:
if browser.element_exists():
elm = browser.find_element():
elm.text()
この要素のチェックが 1 つずつではなく並行して行われるように、これを高速化する何らかの方法が必要です。私が考えることができる唯一のことは、私が好きではないjavascriptを実行することです(すべてをpythonに保ちたいです)。
def get_columns(current_depth,step,element):
columns = []
for xpath in xpaths:
what = parse_xpath(row[2])
if browser.is_element_present_by_xpath(xpath,wait_time=1):
element = browser.find_by_xpath(xpath)
columns.append(element.text)
else:
columns.append('none')
return columns