我想从网页上解析首都城市,并在用户输入国家时在终端上打印它们

2024-09-29 16:28:56 发布

您现在位置:Python中文网/ 问答频道 /正文

网页:https://geographyfieldwork.com/WorldCapitalCities.htm 我想用美丽的汤解析网页 例如,如果用户输入英国,程序必须打印伦敦

import requests
from bs4 import BeautifulSoup

r = requests.get("https://geographyfieldwork.com/WorldCapitalCities.htm")
c = r.text


soup = BeautifulSoup(c, "html.parser")
data = soup.find("table", id="anyid")
rows = data.find_all("tr")

1条回答
网友
1楼 · 发布于 2024-09-29 16:28:56

好的,那么你拥有的是它的90%。你为什么不能从那里接电话?您有一个所有行的列表。因此,对于每一行,您可以找到包含信息的<td>元素。第一个td文本有国家,第二个td文本有首都

import requests
from bs4 import BeautifulSoup

r = requests.get("https://geographyfieldwork.com/WorldCapitalCities.htm")
c = r.text

soup = BeautifulSoup(c, "html.parser")
data = soup.find("table", id="anyid")
rows = data.find_all("tr")
capitals = {}
for row in rows:
    parts = row.find_all("td")
    if parts:
        capitals[parts[0].text] = parts[1].text
print(capitals)

相关问题 更多 >

    热门问题