我试图在页面上找到一个元素,遇到了麻烦。不确定框架/ iframe是否是问题。我已经尝试过xpath和其他定位条件,但是我一直没有得到这样的元素消息。这是网页(http://www.ghin.com/lookup.aspx)
正如我所说,我尝试使用xpath,css_name和其他条件进行定位。 这是HTML的相关部分(必须删除要显示的前导/尾随<>字符(不确定原因)
<td class="ClubGridHandicapIndex" style="width: 118px;" valign="middle" align="center">13.8</td>
我希望能够抓取该元素中的值(在所示示例中为13.8)
这是我为此元素(使用Firefox)获得的xpath:
/html/body/form/div[3]/div/div[1]/div[2]/div[3]/div/div[2]/table/tbody/tr[1]/td[2]
这是我得到的CSS选择器: .ClubGridSelectedRow> td:nth-child(2)
这是我尝试过的代码(旧尝试已被注释掉):
br.switch_to.frame(br.find_element_by_tag_name("iframe"))
br.find_element_by_xpath('//*[@id="ctl00_bodyMP_grdClubs"]/tbody/tr[1]/td[2]')
br.find_element_by_class("/html/body/form/div[3]/div/div[1]/div[2]/div[3]/div/div[2]/table/tbody/tr[1]/td[2]")
handicap_element = br.find_element_by_css_selector("#ctl00_bodyMP_grdClubs > tbody > tr.ClubGridSelectedRow > td.ClubGridHandicapIndex")
handicap_detail = br.find_element_by_xpath("/html/body/form/div[3]/div/div[1]/d1iv[2]/div[3]/div/div[2]/table/tbody/tr[1]/td[2]")
handicap_detail = br.find_element_by_xpath("//td[@class='ClubGridHandicapIndex']")
handicap_detail = br.find_element_by_css_selector("#ctl00_bodyMP_grdClubs > tbody > tr.ClubGridSelectedRow > td.ClubGridHandicapIndex")
任何想法都值得赞赏
我应该能够轻松找到该元素。我在另一个非常成功的项目中使用了硒。但是,我对这个站点上的HTML有所了解。
预先感谢您的帮助。
答案 0 :(得分:0)
以下应该可以工作
content = driver.find_element_by_class_name('ClubGridHandicapIndex')
content = driver.find_element_by_css_selector('td.ClubGridHandicapIndex')
https://selenium-python.readthedocs.io/locating-elements.html