我使用phantomjs
版本1.1.0
和phantomjs-2.1.1.exe
爲windows
。在phantomjs上找不到的元素但在鉻上工作正常
這是HTML代碼
<div class="right-align" style="display: inline-block; vertical-align: middle; border-radius: 6px; margin-left: 20px; flex-grow: 100;">
<div>
<a class="t-next-pd continue-to-query button-text" style="background-color: rgb(11, 197, 216); color: rgb(255, 255, 255); height: 40px; padding: 0px 16px; text-decoration: none; display: inline-flex; font-weight: 500; font-size: 16px; border-radius: 4px; z-index: 100; cursor: pointer; align-items: center; justify-content: center; border: 1px solid rgb(11, 197, 216); width: 100%;">
<span style="display: inline-block;">CONTINUE</span>
</a>
</div>
</div>
我試圖定位使用
- 相對的xpath爲兩個類元素:
.//*[@class='t-next-pd continue-to-query button-text']
,.//*[@class='right-align']
- 由文本
- 的部分文本
- 通過鏈接
- 通過cssSelector
- 文本
- 以絕對的XPath(最後優先)相關的XPath
- 通過類名
- JavaScript的執行
- 隱等待和明確的等待
什麼樣的工作
只有輸入姓名和年齡時,CONTINUE按鈕纔會被激活。 這是CONTINUE按鈕未激活時的代碼。
<div class="right-align" style="display: inline-block; vertical-align: middle; border-radius: 6px; margin-left: 20px; flex-grow: 100;">
<div>
<a class="button-text" disabled="" style="background-color: rgb(199, 199, 199); color: rgb(255, 255, 255); height: 40px; padding: 0px 16px; display: inline-flex; text-decoration: none; font-weight: 500; font-size: 16px; border-radius: 4px; z-index: 100; cursor: pointer; align-items: center; justify-content: center; width: 100%;">
<span style="display: inline-block;">CONTINUE</span>
</a>
</div>
</div>
我在激活的按鈕上使用了這個'a.t-next-pd.continue-to-query.button-text'。這是一個CSS選擇器,在我的情況下它工作正常。 –