Python3 + Selenium,需要在

时间:2016-03-02 01:41:13

标签: javascript python selenium text

正如标题所示,我正在尝试捕获此td标记内的值999.999.999。尝试了以下内容:




    

  • td.text
  • 

  • td.value
  • &# xA;
  • script.value
  • 

  • b.value
  • 

  • execute_script(“return sayMonto”)
  • 

  • execute_script(“return sayMonto;”)
  • 

  • execute_script(“return sayMonto()”)
  • 

  • execute_script(“return sayMonto();”)
  • 

  • execute_script( “sayMonto”)
  • 

  • execute_script( “sayMonto()”)
  • 

  • execute_script(” sayMonto();“)。
  • 





但没有雪茄。在这里你有一个html的snipet,出于安全考虑,这是我认为我能告诉你的唯一。该数字每天都会发生变化,需要将其与其他人一起复制并粘贴到同一站点中。这是纯粹的疯狂,所以请帮助我。为其他网站设置了自动机器人,但至少对我来说这个机器人已经证明很难。




 < tr>
 < td style =“boder-width:1px”>
 &LT b取代; Irrelevant_text_that_i_capture_but_i_really_don't< / B>
 <! - &安培; NBSP; 999.999.999  - >
 < script language =“javascript”>
 sayMonto( '999.999.999');
 < /脚本>
 999.999.999
 < / TD>
 <! - < td style =“border-width:1px”>& nbsp;& nbsp; 999.999.999< / td> - >
< / tr>
  




PS:这是被抛出的错误





selenium.common.exceptions.WebDriverException:消息:cTexto未定义





我从未使用过那个var,所以它必须来自剧本。




1 个答案:

答案 0 :(得分:0)

我不知道有任何方法可以严格控制硒。您将不得不使用另一个库,可能是BeautifulSoup

例如:

# use selenium to get the html
html = driver.page_source

# pass it to beautifulsoup
td = soup.find("td")
# extract the elements you don't want
b = td.find("b")
b.extract()
sc = td.find("script")
sc.extract()
# print just the number
print td.text.strip()