gpt4 book ai didi

python - 如何在 Python 中使用 BeautifulSoup 创建链接?

转载 作者:行者123 更新时间:2023-12-01 01:38:18 25 4
gpt4 key购买 nike

我正在尝试构建一个 HTML 页面,其中包含一个包含信息行的表格(测试用例、失败、警告、测试总数)我希望测试用例列中的每一行都是另一个页面的链接。如下图所示,我的目标是让测试 1 成为一个链接enter image description here下面是我为构建您在图像中看到的内容而编写的代码。谢谢。

import bs4
f = open("practice.html", 'w')
html = """<html>
<body>
<table class="details" border="1" cellpadding="5" cellspacing="2" style="width:95%">
</table>
</body>
</html>"""
soup = bs4.BeautifulSoup(html, "lxml")
table = soup.find('table')
tr = bs4.Tag(table, name='tr')
HTMLColumns = ["Test Cases", "Failed", "Warning", "Total number of tests"]
for title in HTMLColumns: # Add titles to each column
td = bs4.Tag(tr, name='td')
td.insert(0, title)
td.attrs['style'] = 'background-color: #D6FCE9; font-weight: bold;'
tr.append(td)
table.append(tr)
results = ["Test 1", str(5), str(3), str(6)]
tr = bs4.Tag(table, name='tr')
for index, r in enumerate(results): # loop through whole list of issue tuples, and create rows
td = bs4.Tag(tr, name='td')
td.attrs['style'] = 'background-color: #ffffff; font-weight: bold;'
td.string = str(r)
tr.append(td)
table.append(tr)

f.write(soup.prettify())
f.close()

下面是我从 BeautifulSoup 文档中获取的用于创建链接的代码:

from bs4 import BeautifulSoup

soup = BeautifulSoup("<b></b>", "lxml")
original_tag = soup.b

new_tag = soup.new_tag("a", href="http://www.example.com")
original_tag.append(new_tag)
original_tag
# <b><a href="http://www.example.com"></a></b>

new_tag.string = "Link text."
original_tag
# <b><a href="http://www.example.com">Link text.</a></b>
f = open("practice.html", 'w')
f.write(soup.prettify())
f.close()

最佳答案

# This is updated code 
# You just need to add: a = bs4.Tag(td, name='a') to you'r code
# Then you need to fill it:

# if index == 0:
# a.attrs[''] = 'a href="http://www.yahoo.com"'
# a.string = r
# td.append(a)



import bs4
f = open("practice.html", 'w')
html = """<html>
<body>
<table class="details" border="1" cellpadding="5" cellspacing="2" style="width:95%">
</table>
</body>
</html>"""
soup = bs4.BeautifulSoup(html, "lxml")
table = soup.find('table')
tr = bs4.Tag(table, name='tr')
HTMLColumns = ["Test Cases", "Failed", "Warning", "Total number of tests"]
for title in HTMLColumns: # Add titles to each column
td = bs4.Tag(tr, name='td')
td.insert(0, title)
td.attrs['style'] = 'background-color: #D6FCE9; font-weight: bold;'
tr.append(td)
table.append(tr)
results = [str(k), str(v), str(0), str(v)]
tr = bs4.Tag(table, name='tr')
for index, r in enumerate(results): # loop through whole list of issue tuples, and create rows
td = bs4.Tag(tr, name='td')
td.attrs['style'] = 'background-color: #ffffff; font-weight: bold;'
a = bs4.Tag(td, name='a')
if index == 0:
a.attrs[''] = 'a href="http://www.yahoo.com"'
a.string = r
td.append(a)
tr.append(td)
table.append(tr) # append the row to the table
f.write(soup.prettify())
f.close()

关于python - 如何在 Python 中使用 BeautifulSoup 创建链接?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52163423/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com