页面链接是:"https://www.members.agta.org/assnfe/CompanySearch.asp?MODE=DETAIL&COID=1026706&COMPNAME=&CITYNAME=&STATENAME=&CITYID=0&STATEID=0&CTRYID=181&SEARCHIDENTIFIER=81.145.145.150_12/24/2019%203:31:24%20AM&RETAILMBRS=0&ORGTYPE=0&GEMSTONEID=-1&PRODUCTSID=-1&COMPANYDATA=&TID=2&GEMCOLORID=-1&GEMCUTID=-1&GEMQUALID=A">
这是我的目标 html:
<p><strong>Contact:</strong>
Garmendia, Diane
<br>
<strong>Email:</strong> <a href="mailto:Diane33jewels@gmail.com">Diane33jewels@gmail.com</a><br>
<strong>P:</strong> 805-957-9100<br>
<strong>F:</strong> 805-957-4191<br>
<a href="http://www.33jewels.com" target="_blank">http://www.33jewels.com</a>
<!-- <b>Email Link:</b> $MC:EMAILLINKTOFORM$ -->
</p>
我需要使用 xpath 表达式提取"Garmendia, Diane"。
我试过使用:
cname=driver.find_element_by_xpath("//*[contains(text(), 'Contact:')]//following-sibling::text()[1]")
但是我得到的错误是:
Message: invalid selector: The result of the xpath expression "//*[contains(text(), 'Contact:')]//following-sibling::text()[1]" is: [object Text]. It should be an element.
要提取Garmendia, Diane
,请使用javascripts executor
和childNodes
诱导WebDriverWait
(( 并等待element_to_be_clickable
(( 并遵循以下XPATH
法典:
element=WebDriverWait(driver,10).until(EC.element_to_be_clickable((By.XPATH,"//p[contains(.,'Contact:')]")))
print(driver.execute_script('return arguments[0].childNodes[1].textContent;', element))