Python 如何在bs4中获得表格的动态高度和宽度

Python 如何在bs4中获得表格的动态高度和宽度,python,beautifulsoup,Python,Beautifulsoup,我想得到bs4中表格的高度和宽度。我没有在html中为表格指定任何高度和宽度。我希望表格的高度和宽度应该是动态的,有没有办法在bs4中动态访问高度和宽度 html = fancy_html(i) soup = BeautifulSoup(html) mydivs = soup.findAll("table") 当我打印mydivs时,我得到的是带有值的表我想访问它们的高度和宽度,我不想固定表的高度和宽度如果您有如下html,那么可以尝试此代码 # main.py from bs4 impor

我想得到bs4中表格的高度和宽度。我没有在html中为表格指定任何高度和宽度。我希望表格的高度和宽度应该是动态的,有没有办法在bs4中动态访问高度和宽度

html = fancy_html(i)
soup = BeautifulSoup(html)
mydivs = soup.findAll("table")

当我打印
mydivs
时,我得到的是带有值的表我想访问它们的高度和宽度,我不想固定表的高度和宽度

如果您有如下html,那么可以尝试此代码

# main.py

from bs4 import BeautifulSoup as bs

html_content = """
 <table>
  <tr>
    <th>Firstname</th>
    <th>Lastname</th>
    <th>Age</th>
  </tr>
  <tr>
    <td>Jill</td>
    <td>Smith</td>
    <td>50</td>
  </tr>
  <tr>
    <td>Eve</td>
    <td>Jackson</td>
    <td>94</td>
  </tr>
  <tr>
    <td>Harry</td>
    <td>Willson</td>
    <td>34</td>
  </tr>
  <tr>
    <td>Tom</td>
    <td>Harison</td>
    <td>65</td>
  </tr>
</table> 
"""

soup = bs(html_content, "html.parser")
tr = soup.findAll("tr")
th = soup.findAll("th")

height = len(tr)
width = len(th)

print("height:", height)
print("width:", width)
标准: 身高:5

宽度:3


如果您有如下html,那么可以尝试以下代码

# main.py

from bs4 import BeautifulSoup as bs

html_content = """
 <table>
  <tr>
    <th>Firstname</th>
    <th>Lastname</th>
    <th>Age</th>
  </tr>
  <tr>
    <td>Jill</td>
    <td>Smith</td>
    <td>50</td>
  </tr>
  <tr>
    <td>Eve</td>
    <td>Jackson</td>
    <td>94</td>
  </tr>
  <tr>
    <td>Harry</td>
    <td>Willson</td>
    <td>34</td>
  </tr>
  <tr>
    <td>Tom</td>
    <td>Harison</td>
    <td>65</td>
  </tr>
</table> 
"""

soup = bs(html_content, "html.parser")
tr = soup.findAll("tr")
th = soup.findAll("th")

height = len(tr)
width = len(th)

print("height:", height)
print("width:", width)
标准: 身高:5

宽度:3


Beautifulsoup不呈现HTML,表格没有高度。使用bs可以访问的唯一内容是关于HTML中设置的维度的任何值。@KlausD是否有方法根据表中的元素访问高度和宽度,元素可以更改,所以我需要动态,这就是为什么“动态”宽度是什么意思?以像素为单位的表格宽度取决于屏幕大小。这不是BeautifulSoup可以访问的属性,因为它不是在网站的html中编码的。BeautifulSoup不呈现html,表没有高度。使用bs可以访问的唯一内容是关于HTML中设置的维度的任何值。@KlausD是否有方法根据表中的元素访问高度和宽度,元素可以更改,所以我需要动态,这就是为什么“动态”宽度是什么意思?以像素为单位的表格宽度取决于屏幕大小。这不是BeautifulSoup可以访问的属性,因为这不是网站html中的编码。