gpt4 book ai didi

python - beautifulsoup 查找特定标签

转载 作者:行者123 更新时间:2023-11-30 23:27:12 25 4
gpt4 key购买 nike

我开始使用 beautifulsoup,但我遇到了一个似乎无法解决的问题。

我有this

网站并想要解析该项目的值。该值可以在

之间找到
<span class="gw2money-fragment">%value <i class="gw2money-silver">s</i></span>

标签和

<span class="gw2money-fragment">%value <i class="gw2money-copper">c</i></span>. 

获取这些值不是问题,问题是检查该值是否在 <i class="gw2money-silver"> 内或<i class="gw2money-copper">标签。

r = requests.get("http://www.gw2spidy.com/item/24467", proxies=proxyDict)

soup = BeautifulSoup(r.text)
checksoup = soup.find_all("span")

numliste = []
for links in checksoup:
#print(links)
price = links.contents[0]
print(price)

del numliste[0]
print(numliste)

这就是我目前检索铜和银值的方法。

最佳答案

我会搜索 gw2money-fragment 类,然后测试该类在所包含的 i 元素上的内容:

for row in soup.find_all('tr'):
fragments = row.find_all('span', class_='gw2money-fragment')
if not fragments:
continue
label = row.th or row.td
print(label.text)
for fragment in fragments:
value = fragment.text.split()[0]
type_ = fragment.i['class'][0].rsplit('-', 1)[-1]
print('-', value, type_)

演示:

>>> for row in soup.find_all('tr'):
... fragments = row.find_all('span', class_='gw2money-fragment')
... if not fragments:
... continue
... label = row.th or row.td
... print(label.text)
... for fragment in fragments:
... value = fragment.text.split()[0]
... type_ = fragment.i['class'][0].rsplit('-', 1)[-1]
... print('-', value, type_)
...
Sell Price:
- 1 silver
- 50 copper
Buy Price:
- 1 silver
- 32 copper

Topaz Nugget

- 2 silver
- 98 copper
- 1 silver
- 77 copper

Sunstone Nugget

- 3 silver
- 17 copper
- 2 silver
- 15 copper

Carnelian Nugget

- 3 silver
- 48 copper
- 2 silver
- 15 copper

Peridot Nugget

- 3 silver
- 21 copper
- 2 silver
- 19 copper

Adorned Tiger's Eye Jewel

- 4 silver
- 26 copper
- 3 silver
- 85 copper

Tiger's Eye Copper Amulet of Precision

- 6 silver
- 26 copper
- 4 silver
- 51 copper

Tiger's Eye Copper Ring of Precision

- 6 silver
- 46 copper
- 4 silver
- 76 copper

Tiger's Eye Copper Stud of Precision

- 7 silver
- 2 copper
- 5 silver
- 43 copper

关于python - beautifulsoup 查找特定标签,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22250666/

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