因此,我尝试使用Google表格中的ImportXML功能从网站(https://www.cargurus.com/Cars/m-Bob-Johnson-Certified-Collection-sp402449)中删除一些数据,而且我无法找到有效的路径。这是我想要拉的部分。
我尝试过使用Chromes Inspect Element并使用Copy X-path,它给了我
//*[@id="ratingFilter_ContainerId"]/div
并返回#NA
我使用了一个名为Scraper的Chrome插件,它为我提供//div[13]/div/div[2]/div[2]/div/label
并返回#NA
我甚至尝试过编写代码并从头开始直接制作路径并提出//body/div[1]/div[1]/main/div[1]/div[1]/div[11]/div[1]/div[1]/div[2]/div[2]/div[1]/div[1]/div[3]/div[1]/div[4]/div[2]/div[13]/div[1]/div[2]/div[2]/div
也返回#NA
所以任何寻找准确XPath的技巧都会受到赞赏。
答案 0 :(得分:0)
表达式
//*[@id="ratingFilter_ContainerId"]
对提取的文档执行的选择一个div
元素,比您显示的元素高两级
当由另一个子表达式扩展时:
//*[@id="ratingFilter_ContainerId"]/div
它会选择包含'交易评级'的div
。标题为'(清除)'链接在右侧,和您需要的选项列表。
您感兴趣的是
$fetched-document/descendant::div[@id="ratingFilter_OptionListContainer"]
修改强>
顺便说一句,你确定你正确地获取了页面吗?当我将其加载到我的浏览器中时,该页面似乎会加载一些额外的数据,这些数据通过“加载列表...”来表示。溅。也许您正试图在不完整的页面上执行查询...?