目前我正在使用转置,然后使用另一列来计算结果并给我我想要的内容。但是因为Tanaike非常棒并且在另一个部分帮助我,所以我试图围绕他所做的事情并将其应用于此。
从A1中的此网址开始,
https://www.zillow.com/homedetails/307-N-Rosedale-Ave-Tulsa-OK-74127/22151896_zpid/
这是A2中的公式:
=If($A$1:A="","",Transpose(importxml($A1:$A,"//span[@class='snl phone']")))
根据列表,有时会有三个电话号码,有时四个,有时八个,根据需要分布在尽可能多的列中。
我正在寻找业主电话号码。这是检查中的ELEMENT。
<div class="info flat-star-ratings sig-col" id="yui_3_18_1_2_1506365934526_2361"> <span class="snl name notranslate">Property Owner</span> <span class="snl phone" id="yui_3_18_1_2_1506365934526_2360">(918) 740-1698 </span> </div>
所以我尝试了这个,它的内容是空的。我想要查看div类信息平面,然后在那个snl手机中,并在跨度/结束前停止。
=importXML(B17,"//div[@class='info flat-star-ratings sig-col']//span[@class='snl phone']/@span")
我真正需要的只是业主电话号码,准确率达到95%或更高。
答案 0 :(得分:0)
如何修改XPath查询?
=importxml(A1,"//div[@class='info flat-star-ratings sig-col']//span[@class='snl phone']")
如果这不是你想要的数据,我很抱歉。
第4和第8个数字是相同的。我的理解是否正确?如果没问题的话。请将URL和以下公式分别添加到“A1”和“A2”。
=QUERY(ARRAYFORMULA(IF(IMPORTXML(A1,"//div[@class='info flat-star-ratings sig-col']//span[@class='snl name notranslate']")="Property Owner",IMPORTXML(A1,"//div[@class='info flat-star-ratings sig-col']//span[@class='snl phone']"), "")),"Select * where Col1<>''")