如何从Playwright的locator.all()返回元素中提取URL?
提取导航项URL的解决方法
每个li.nav-item内部通常包含负责跳转的<a>标签,你需要定位该子元素并提取其href属性。以下是两种实现方式:
方式一:遍历li元素后定位子a标签
nav_bar_items = page.locator("li.nav-item").all() for nav_item in nav_bar_items: title = nav_item.text_content() # 定位当前导航项内的a标签,获取href属性 url = nav_item.locator("a").get_attribute("href") print(f"标题: {title}, 链接: {url}")
如果页面中a标签有特定标识(比如类名nav-link),可以将选择器改为更精确的"a.nav-link",避免定位错误。
方式二:直接定位所有导航a标签(更高效)
跳过li元素,直接定位所有目标a标签,减少层级遍历:
nav_links = page.locator("li.nav-item a").all() for link in nav_links: title = link.text_content() url = link.get_attribute("href") print(f"标题: {title}, 链接: {url}")
内容的提问来源于stack exchange,提问作者Shrey Tandel
相关产品推荐
相关产品推荐

