首页 > 解决方案 > “列表”对象没有属性“文本”

问题描述

这就是我想用美丽的汤刮的那个人

在在线浏览器股票游戏之一。

<tbody>
  <tr class="stock visible-xs">
    <td colspan="3"> <a href="#viewStock" data-toggle="modal" data-target="#myModal" data-id="12"> Band Alizarin </a> </td>
    <td> <i class="glyphicon glyphicon-chevron-up"></i> $7,300 </td>
  </tr>
  <tr class="stock">
    <td> <input type="text" class="table-input" name="stock[ 12 ]" value="0" data-max-buy="1659"> </td>
    <td class="text-center"> <input readonly="" type="text" class="table-input" value="0"> </td>
    <td class="text-left hidden-xs"> <a href="#viewStock" data-toggle="modal" data-target="#myModal" data-id="12"> Band Alizarin </a> </td>
    <td class="text-left hidden-xs"> <i class="glyphicon glyphicon-chevron-up"></i> $7,300 </td>
    <td class="text-left"> <i class="glyphicon glyphicon-minus"></i> 0% </td>
    <td class="text-left"> $0 </td>
  </tr>
  <tr class="stock visible-xs">
    <td colspan="3"> <a href="#viewStock" data-toggle="modal" data-target="#myModal" data-id="15"> Bottled Inc. </a> </td>
    <td> <i class="glyphicon glyphicon-chevron-down"></i> $7,939 </td>
  </tr>
  <tr class="stock">
    <td> <input type="text" class="table-input" name="stock[ 15 ]" value="0" data-max-buy="1525"> </td>
    <td class="text-center"> <input readonly="" type="text" class="table-input" value="0"> </td>
    <td class="text-left hidden-xs"> <a href="#viewStock" data-toggle="modal" data-target="#myModal" data-id="15"> Bottled Inc. </a> </td>
    <td class="text-left hidden-xs"> <i class="glyphicon glyphicon-chevron-down"></i> $7,939 </td>
    <td class="text-left"> <i class="glyphicon glyphicon-minus"></i> 0% </td>
    <td class="text-left"> $0 </td>
  </tr>
  <tr class="stock visible-xs">
    <td colspan="3"> <a href="#viewStock" data-toggle="modal" data-target="#myModal" data-id="9"> Crime Online ISP </a> </td>
    <td> <i class="glyphicon glyphicon-chevron-up"></i> $4,440 </td>
  </tr>
  <tr class="stock">
    <td> <input type="text" class="table-input" name="stock[ 9 ]" value="0" data-max-buy="2727"> </td>
    <td class="text-center"> <input readonly="" type="text" class="table-input" value="0"> </td>
    <td class="text-left hidden-xs"> <a href="#viewStock" data-toggle="modal" data-target="#myModal" data-id="9"> Crime Online ISP </a> </td>
    <td class="text-left hidden-xs"> <i class="glyphicon glyphicon-chevron-up"></i> $4,440 </td>
    <td class="text-left"> <i class="glyphicon glyphicon-minus"></i> 0% </td>
    <td class="text-left"> $0 </td>
  </tr>
  <tr class="stock visible-xs">
    <td colspan="3"> <a href="#viewStock" data-toggle="modal" data-target="#myModal" data-id="4"> Dark Minds Holding </a> </td>
    <td> <i class="glyphicon glyphicon-chevron-down"></i> $542 </td>
  </tr>
  <tr class="stock">
    <td> <input type="text" class="table-input" name="stock[ 4 ]" value="0" data-max-buy="4040"> </td>
    <td class="text-center"> <input readonly="" type="text" class="table-input" value="0"> </td>
    <td class="text-left hidden-xs"> <a href="#viewStock" data-toggle="modal" data-target="#myModal" data-id="4"> Dark Minds Holding </a> </td>
    <td class="text-left hidden-xs"> <i class="glyphicon glyphicon-chevron-down"></i> $542 </td>
    <td class="text-left"> <i class="glyphicon glyphicon-minus"></i> 0% </td>
    <td class="text-left"> $0 </td>
  </tr>
  <tr class="stock visible-xs">
    <td colspan="3"> <a href="#viewStock" data-toggle="modal" data-target="#myModal" data-id="10"> DI Mobile </a> </td>
    <td> <i class="glyphicon glyphicon-chevron-up"></i> $5,670 </td>
  </tr>
  <tr class="stock">
    <td> <input type="text" class="table-input" name="stock[ 10 ]" value="0" data-max-buy="2136"> </td>
    <td class="text-center"> <input readonly="" type="text" class="table-input" value="0"> </td>
    <td class="text-left hidden-xs"> <a href="#viewStock" data-toggle="modal" data-target="#myModal" data-id="10"> DI Mobile </a> </td>
    <td class="text-left hidden-xs"> <i class="glyphicon glyphicon-chevron-up"></i> $5,670 </td>
    <td class="text-left"> <i class="glyphicon glyphicon-minus"></i> 0% </td>
    <td class="text-left"> $0 </td>
  </tr>
  <tr class="stock visible-xs">
    <td colspan="3"> <a href="#viewStock" data-toggle="modal" data-target="#myModal" data-id="7"> DM Server Hosting </a> </td>
    <td> <i class="glyphicon glyphicon-chevron-down"></i> $1,695 </td>
  </tr>
  <tr class="stock">
    <td> <input type="text" class="table-input" name="stock[ 7 ]" value="0" data-max-buy="4040"> </td>
    <td class="text-center"> <input readonly="" type="text" class="table-input" value="0"> </td>
    <td class="text-left hidden-xs"> <a href="#viewStock" data-toggle="modal" data-target="#myModal" data-id="7"> DM Server Hosting </a> </td>
    <td class="text-left hidden-xs"> <i class="glyphicon glyphicon-chevron-down"></i> $1,695 </td>
    <td class="text-left"> <i class="glyphicon glyphicon-minus"></i> 0% </td>
    <td class="text-left"> $0 </td>
  </tr>
  <tr class="stock visible-xs">
    <td colspan="3"> <a href="#viewStock" data-toggle="modal" data-target="#myModal" data-id="16"> FC Dark-Football </a> </td>
    <td> <i class="glyphicon glyphicon-chevron-down"></i> $13,174 </td>
  </tr>
  <tr class="stock">
    <td> <input type="text" class="table-input" name="stock[ 16 ]" value="0" data-max-buy="0"> </td>
    <td class="text-center"> <input readonly="" type="text" class="table-input" value="4040"> </td>
    <td class="text-left hidden-xs"> <a href="#viewStock" data-toggle="modal" data-target="#myModal" data-id="16"> FC Dark-Football </a> </td>
    <td class="text-left hidden-xs"> <i class="glyphicon glyphicon-chevron-down"></i> $13,174 </td>
    <td class="text-left"> <i class="glyphicon glyphicon-chevron-up"></i> 8.81% </td>
    <td class="text-left"> $53,222,960 </td>
  </tr>
  <tr class="stock visible-xs">
    <td colspan="3"> <a href="#viewStock" data-toggle="modal" data-target="#myModal" data-id="14"> Fly to the sky airlines </a> </td>
    <td> <i class="glyphicon glyphicon-chevron-down"></i> $7,171 </td>
  </tr>
  <tr class="stock">
    <td> <input type="text" class="table-input" name="stock[ 14 ]" value="0" data-max-buy="1689"> </td>
    <td class="text-center"> <input readonly="" type="text" class="table-input" value="0"> </td>
    <td class="text-left hidden-xs"> <a href="#viewStock" data-toggle="modal" data-target="#myModal" data-id="14"> Fly to the sky airlines </a> </td>
    <td class="text-left hidden-xs"> <i class="glyphicon glyphicon-chevron-down"></i> $7,171 </td>
    <td class="text-left"> <i class="glyphicon glyphicon-minus"></i> 0% </td>
    <td class="text-left"> $0 </td>
  </tr>
  <tr class="stock visible-xs">
    <td colspan="3"> <a href="#viewStock" data-toggle="modal" data-target="#myModal" data-id="11"> Leetcom </a> </td>
    <td> <i class="glyphicon glyphicon-chevron-up"></i> $6,781 </td>
  </tr>
  <tr class="stock">
    <td> <input type="text" class="table-input" name="stock[ 11 ]" value="0" data-max-buy="0"> </td>
    <td class="text-center"> <input readonly="" type="text" class="table-input" value="4040"> </td>
    <td class="text-left hidden-xs"> <a href="#viewStock" data-toggle="modal" data-target="#myModal" data-id="11"> Leetcom </a> </td>
    <td class="text-left hidden-xs"> <i class="glyphicon glyphicon-chevron-up"></i> $6,781 </td>
    <td class="text-left"> <i class="glyphicon glyphicon-chevron-up"></i> 27.49% </td>
    <td class="text-left"> $27,395,240 </td>
  </tr>
  <tr class="stock visible-xs">
    <td colspan="3"> <a href="#viewStock" data-toggle="modal" data-target="#myModal" data-id="5"> Mykrotech </a> </td>
    <td> <i class="glyphicon glyphicon-chevron-up"></i> $201 </td>
  </tr>
  <tr class="stock">
    <td> <input type="text" class="table-input" name="stock[ 5 ]" value="0" data-max-buy="0"> </td>
    <td class="text-center"> <input readonly="" type="text" class="table-input" value="4040"> </td>
    <td class="text-left hidden-xs"> <a href="#viewStock" data-toggle="modal" data-target="#myModal" data-id="5"> Mykrotech </a> </td>
    <td class="text-left hidden-xs"> <i class="glyphicon glyphicon-chevron-up"></i> $201 </td>
    <td class="text-left"> <i class="glyphicon glyphicon-chevron-down"></i> 0% </td>
    <td class="text-left"> $812,040 </td>
  </tr>
  <tr class="stock visible-xs">
    <td colspan="3"> <a href="#viewStock" data-toggle="modal" data-target="#myModal" data-id="8"> Searchable </a> </td>
    <td> <i class="glyphicon glyphicon-chevron-up"></i> $3,402 </td>
  </tr>
  <tr class="stock">
    <td> <input type="text" class="table-input" name="stock[ 8 ]" value="0" data-max-buy="3560"> </td>
    <td class="text-center"> <input readonly="" type="text" class="table-input" value="0"> </td>
    <td class="text-left hidden-xs"> <a href="#viewStock" data-toggle="modal" data-target="#myModal" data-id="8"> Searchable </a> </td>
    <td class="text-left hidden-xs"> <i class="glyphicon glyphicon-chevron-up"></i> $3,402 </td>
    <td class="text-left"> <i class="glyphicon glyphicon-minus"></i> 0% </td>
    <td class="text-left"> $0 </td>
  </tr>
  <tr class="stock visible-xs">
    <td colspan="3"> <a href="#viewStock" data-toggle="modal" data-target="#myModal" data-id="13"> United Farmers </a> </td>
    <td> <i class="glyphicon glyphicon-chevron-down"></i> $7,007 </td>
  </tr>
  <tr class="stock">
    <td> <input type="text" class="table-input" name="stock[ 13 ]" value="0" data-max-buy="1728"> </td>
    <td class="text-center"> <input readonly="" type="text" class="table-input" value="0"> </td>
    <td class="text-left hidden-xs"> <a href="#viewStock" data-toggle="modal" data-target="#myModal" data-id="13"> United Farmers </a> </td>
    <td class="text-left hidden-xs"> <i class="glyphicon glyphicon-chevron-down"></i> $7,007 </td>
    <td class="text-left"> <i class="glyphicon glyphicon-minus"></i> 0% </td>
    <td class="text-left"> $0 </td>
  </tr>
  <tr>
    <td> <button name="type" value="buy" class="btn btn-link btn-block text-center" style="margin-bottom: 5px !important;"> Buy </button> <button name="type" value="sell" class="btn btn-link btn-block text-center"> Sell </button> </td>
    <td> </td>
    <td colspan="4"></td>
  </tr>
</tbody>
我使用这个代码

driver.find_element_by_link_text('Stock Market').click()
source=driver.page_source
soup=BeautifulSoup(source,'lxml')
StockTable=soup.find('table',class_='table table-condensed table-responsive table-bordered table-striped')
# print(StockTable.prettify()) #<=====  It print perfect code 
tbody=StockTable.find('tbody')
# print(tbody.prettify())      #<=====  It print perfect code 
for tr in tbody.find_all('tr',class_='stock'):
    Data1=tr.find_all('td')[2:4].text
    print(Data1)
print(Data1)    

我总是得到那个错误 Traceback(最近一次调用最后一次):文件“d:/sm/py-projects/ShootBot Project/alpha_stock.py”,第 60 行,在 Data1=tr.find_all('td')[2: 4].text AttributeError: 'list' 对象没有属性 'text'

我只尝试获取股票名称和价格文本。请,我需要知道我在这段代码中错过了什么。

标签: pythonweb-scrapingbeautifulsoup

解决方案


它不起作用,因为您说 find_all()... 您必须先遍历结果,然后才能对其进行文本化:)

Data1=tr.find_all('td')[2:4]
for i in Data1:
    print(i.text)

推荐阅读