2016-11-07 67 views
0

並且預先感謝您抽出寶貴的時間來解決這個難題,並就此主題進行教育。iMacros - 與XPATH的TAG特定元素

(請原諒我的術語)

我使用下面的代碼中的iMacros的Firefox作爲元素存在,並以相同的順序來選擇網站,其中能正常工作中的一個元素,只要。

TAG XPATH=".//*[@id='contacts']/ul/li[1]/div/ul/li[1]" EXTRACT=TXT 

在這種情況下會導致「紐約,紐約」

來源:

<div id="contacts" class="article expanding_group"> 
<div class="article-header"> 
<!-- Public Company = Block. Public Name/Title = Restricted. --> 
<ul class="list"> 
<li class="list_item"> 
<div class="list_item_content contact-detail"> 
<div class="edit expanded"> 
<ul> 
<li class="name"> New York, NY </li> 
<li class=" ellipsis"> 
<a href="http://www.a24films.com" target="_blank">http://www.a24films.com</a> 
</li> 
<li class="info "> 
+1 646 568 6015 
<span class="attributes">phone</span> 
</li> 
<li class="info ellipsis"> 
<a href="mailto:[email protected]" data-linkpa="offsite-contact--email">[email protected]</a> 
</li> 
<li class="address ">601 West 26th Street</li> 
<li class="address ">Suite 1740</li> 
<li class="address "> New York, NY 10001 </li> 
<li class="address ">USA</li> 
<li class="address "> 
</ul> 
</div> 

然而,如果該字段缺少,它會跳到下一個字段,將實質上,會導致數據被插入到不正確的行中。

E.g.如果我預計列「姓名,電話,地址」,並且它缺少電話,則會導致「姓名,地址,空白」。

我可以看到它我只想當列表項1的類=「名稱」,所以我的問題是:有沒有一種方法來指定,我想在列表中包含「名稱」的列表項目編號1?

我試圖串無濟於事的變化,但我woulf成像這樣的事情是可能的:

TAG XPATH=".//*[@id='contacts']/ul/li[1]/div/ul/li[1]/name" EXTRACT=TXT 

謝謝您的時間,

雷納爾多

回答

0

你可以試試以下代碼:

TAG XPATH=".//*[@id='contacts']/ul/li[1]/div/ul/li[@class='name'][1]" EXTRACT=TXT 
0

試試這個Xpath: .//*[@id='contacts']//li[@class='name'][1]

我不認爲@ Shugar的代碼可以工作。