Selenium无法定位可点击元素及下拉菜单数据爬取求助
爬取United Rugby球队统计数据的问题
初始定位超时问题
我要爬取页面https://www.unitedrugby.com/clubs/glasgow-warriors/stats里的球队统计数据,目标是2022/23赛季的6个菜单:
- Attack
- Defence
- Kicking
- Discipline
- Lineouts
- Scrums
我用Firefox开发者工具定位到打开菜单的元素XPATH://div[@class='bg-white px-6 py-2 absolute left-1/2 -translate-x-1/2 -top-5 text-slate-deep uppercase text-2xl leading-5 font-step-1 font-urc-sans tracking-[2px] hover:cursor-pointer select-none']
然后用以下代码等待元素可点击:
Elements = WebDriverWait(driver, 60).until( EC.element_to_be_clickable((By.XPATH, "//div[@class='bg-white px-6 py-2 absolute left-1/2 -translate-x-1/2 -top-5 text-slate-deep uppercase text-2xl leading-5 font-step-1 font-urc-sans tracking-[2px] hover:cursor-pointer select-none']")) )
但不管设置多久等待时间,都会触发Timeout异常。
后续数据提取问题
解决元素定位问题后,我需要获取下拉菜单内的统计数据(比如Attack中的"Points scored"),这些数据位于类flex justify-between items-center border-t border-mono-300 py-4 md:py-6下。
已经点击了Cookie按钮并等待元素加载完成,我尝试用Elements = [el.click() for el in Elements]点击6个菜单,但还是无法获取目标数据,求正确的操作方式。
内容的提问来源于stack exchange,提问作者schmat_90
相关产品推荐
相关产品推荐

