我有以下問題報廢網站。我有 3700 頁的個人電子郵件,我需要實作它們。問題是它們不包含任何類名,并且 Xpath 對于不同的頁面可能會有所不同,因為有時電子郵件之前有電話號碼,這會破壞一切。我嘗試對硒使用不同的解決方案,但它不起作用。你能否給我一些關于如何處理這個問題以及如何刮掉它們的建議。下面是一些頁面示例,其中顯示了不同的 html 結構。謝謝!
<div>
<div><i class="fa fa-envelope" style="margin-right: 0.5rem;"></i><span style="unicode-bidi: bidi-override; direction: rtl;"> moc.ttobbanaej@naej</span></div>
<div><a href="http://JeanAbbott.com" target="_blank" class="websiteLink" rel="noopener noreferrer" style="overflow-wrap: normal; text-overflow: ellipsis; overflow: hidden;">JeanAbbott.com</a></div>
<div id="contactInfoWrap" style="margin-top: 10px;">
<div>Jean Abbott</div>
<div>
<div>5 Colonial Circle</div>
<div>Medicine Lake, MN 55441</div>
<div>US</div>
</div>
</div>
</div>
還有一個
<div>
<div><i class="fa fa-phone" style="margin-right: 0.5rem;"></i>202-800-7057</div>
<div><i class="fa fa-envelope" style="margin-right: 0.5rem;"></i><span style="unicode-bidi: bidi-override; direction: rtl;"> moc.tsiugnilde@ahsynal</span></div>
<div><a href="http://edlinguist.com/" target="_blank" class="websiteLink" rel="noopener noreferrer" style="overflow-wrap: normal; text-overflow: ellipsis; overflow: hidden;">edlinguist.com/</a></div>
<div id="contactInfoWrap" style="margin-top: 10px;">
<div>LaNysha Adams</div>
<div>
<div>80 M St SE</div>
<div>1st Floor</div>
<div>Washington, DC 20003</div>
<div>US</div>
</div>
</div>
</div>
我需要的元素看起來像這樣
<span style="unicode-bidi: bidi-override; direction: rtl;"> moc.ttobbanaej@naej</span>
uj5u.com熱心網友回復:
//div[contains(.,"@")]/span
上面的 xpath 運算式將選擇您想要的 html 部分:
<span style="unicode-bidi: bidi-override; direction: rtl;"> moc.tsiugnilde@ahsynal</span>
所需的文本節點值為:moc.tsiugnilde@ahsynal
uj5u.com熱心網友回復:
似乎電子郵件地址是鏡像的。為了解決這個問題,有 style info:unicode-bidi: bidi-override; direction: rtl;意思moc.tsiugnilde@ahsynal是[email protected].
所以最好只使用這個 XPath:
//span[style='unicode-bidi: bidi-override; direction: rtl;']
轉載請註明出處,本文鏈接:https://www.uj5u.com/ruanti/479404.html
