如何使用Selenium提取使用html的'<p>'标记内的类定义的按钮的链接

时间:2019-06-23 04:25:21

标签: python selenium xpath web-scraping

我一直在尝试爬网一个不提供API的网站,但遇到了一个问题,我想要一个按钮的链接,但是该按钮未使用传统的按钮或输入标签进行定义,而是定义了该按钮当我使用Inspect Element时,在ap标签内部。

选择p标签时,它会高亮显示按钮,但是p标签内唯一的东西是span标签中的按钮文本。

p具有一些属性,例如类,ng-click,autom等

无论如何,我是否可以使用python中的Selenium chrome webdrivers获得此按钮的链接?

<div class="fr hidden-md" ng-show="flt.totalFare>0 || queryProp.rescId">
    <p class="<classs name>" analytics="<stuff>" yatratrackable="<stuff>" ng-click="makePricing({seg:flt.selectedId, from:'', ttype:queryProp.type},$event,flt);" autom="booknow">
        <span analytics="<stuff>" yatratrackable="<stuff>" class="<class name>">Book
                                Now
        </span>

        <i ng-class="currencyCode=='<code>'?'<cur>':'symbol'" ng-bind-html="currencySymbol" class="rs"><currency>
        </i>&nbsp;5,715</span>
            <i class="<class name>" ng-show="flt.clicked &amp;&amp; conf.pricingOn" style="position: absolute;margin-left:
                                        0;">
            </i>
    </p>
</div>

这是该网页的确切代码,只是做了一些小的更改。

我如何使用硒提取此按钮的链接?

检查元素显示按钮已在 段落标签

1 个答案:

答案 0 :(得分:0)

这是可用于访问立即预订按钮的xpath。

//div[@class='fr hidden-md']//p[@autom='booknow']

如果要按索引选择按钮,请使用如下所示的索引

(//div[@class='fr hidden-md']//p[@autom='booknow'])[1]