我正在尝试使用剧作家自动选择值。但这并不是在选择价值。
等待选择器“(//
@value=‘2000000’)2”可见的
正在显示此错误消息。背后的原因是什么?
def start_requests(self):
yield scrapy.Request(
url="https://www.rightmove.co.uk/",
callback = self.parse,
meta= dict(
playwright = True,
playwright_include_page = True,
playwright_page_coroutines = [
# setting location
PageCoroutine("fill", "//input[@name='typeAheadInputField']", 'london'),
# clicking 'For Rent' button
PageCoroutine("click", selector = "//button[@class='ksc_button large primary searchPanelControls '][1]"),
# selecting price range
PageCoroutine("wait_for_timeout", 3000),
PageCoroutine("wait_for_selector", "(//option[@value='2000000'])[2]"),
PageCoroutine("select_option", "(//select/option[@value='2000000'])[2]"),
# selecting bedroom range
PageCoroutine("wait_for_timeout", 3000),
PageCoroutine("wait_for_selector", "(//option[@value='5'])[1]"),
PageCoroutine("select_option", "(//select/option[@value='5'])[1]"),
# checking tick box
PageCoroutine("check", "//span[@class='tickbox--indicator']"),
PageCoroutine("wait_for_selector", "//span[@class='tickbox--indicator']"),
PageCoroutine("wait_for_timeout", 3000),
# clicking search button
PageCoroutine("click", "//button[@class='//button[@id='submit"),
PageCoroutine("wait_for_selector", "//button[@class='//button[@id='submit"),
PageCoroutine("wait_for_timeout", 3000)
]
)
)
return super().start_requests()输出
playwright._impl._api_types.TimeoutError: Timeout 30000ms exceeded.
=========================== logs ===========================
waiting for selector "(//option[@value='2000000'])[2]" to be visible
selector resolved to hidden <option value="2000000">2,000,000</option>https://stackoverflow.com/questions/71713817
复制相似问题