【问题标题】:Parse HTML storage format for data解析数据的 HTML 存储格式
【发布时间】:2021-07-11 17:36:00
【问题描述】:

我从一个网站中提取了一种 HTML 存储格式标记语言。信息采用表格格式,如网站所示: 但是,在我使用 curl 命令提取信息后,我得到了 HTML 格式的信息。请告知如何使用 Python 解析这些信息,以便我只能收集数据。也许我们可以将数据插入到类似 [[CALX-582 Action-Item], [CALX-736 Action-Item]......] 的列表中。是否有任何 Python-API 可以做到这一点?还是建议只使用 REGEX 并解析所需的数据。

<pre><br /></pre>
<p class="auto-cursor-target"><br /></p>
<table><colgroup><col /><col /></colgroup>
<tbody>
<tr>
<th>JIRA</th>
<th>Type</th></tr>
<tr>
<td>CALX-582</td>
<td><span>Action-Item</span></td></tr>
<tr>
<td>CALX-736</td>
<td><span>Action-Item</span></td></tr>
<tr>
<td>CALX-735</td>
<td><span>Action-Item</span></td></tr>
<tr>
<td>CALX-792</td>
<td><span>Action-Item</span></td></tr>
<tr>
<td>CALX-1563</td>
<td><span>Action-Item</span></td></tr>
<tr>
<td>CALX-1567</td>
<td><span>Action-Item</span></td></tr>
<tr>
<td>CALX-1861</td>
<td>Bug</td></tr></tbody></table>
<p class="auto-cursor-target"><br /><br /></p>

【问题讨论】:

标签: python html curl html-table


【解决方案1】:

如前所述,您可以为此使用 BeautifulSoup。

不确定您想要如何获取数据,但下面的代码将创建一个字典列表,其中键来自 JIRA 列,值来自 Type 列。

您可以使用其他方法将数据放入其他类型的结构中。

from bs4 import BeautifulSoup

html = """
<pre><br /></pre>
<p class="auto-cursor-target"><br /></p>
<table><colgroup><col /><col /></colgroup>
<tbody>
<tr>
<th>JIRA</th>
<th>Type</th></tr>
<tr>
<td>CALX-582</td>
<td><span>Action-Item</span></td></tr>
<tr>
<td>CALX-736</td>
<td><span>Action-Item</span></td></tr>
<tr>
<td>CALX-735</td>
<td><span>Action-Item</span></td></tr>
<tr>
<td>CALX-792</td>
<td><span>Action-Item</span></td></tr>
<tr>
<td>CALX-1563</td>
<td><span>Action-Item</span></td></tr>
<tr>
<td>CALX-1567</td>
<td><span>Action-Item</span></td></tr>
<tr>
<td>CALX-1861</td>
<td>Bug</td></tr></tbody></table>
<p class="auto-cursor-target"><br /><br /></p>
"""

soup = BeautifulSoup(html, 'html.parser')

jira = soup.select('td')

data = [{jira[idx].getText(): jira[idx+1].getText()} for idx in  range(0, len(jira), 2)]

print(data)

【讨论】:

    猜你喜欢
    • 2013-01-10
    • 1970-01-01
    • 2017-03-03
    • 2015-12-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多