宁波舟山港世界排名
import requestsfrom bs4 import BeautifulSoupimport redef get_ranking(html):
soup = BeautifulSoup(html, 'html.parser')
tables = soup.find_all('table')
table = tables[0]
rows = table.find_all('tr')
ranking_data = []
for row in rows[1:]:
columns = row.find_all('td')
rank = columns[0].text.strip()
port = columns[1].text.strip()
volume = columns[2].text.strip()
ranking_data.append((rank, port, volume))
return ranking_datadef get_html(url):
response = requests.get(url)
html = response.text
return htmldef extract_data(ranking_data):extracted_data = {}
for data in ranking_data:
rank = data[0]
port = data[1]
volume = re.search(r'\d+\.\d+', data[2]).group()
extracted_data[port] = float(volume)
return extracted_datadef get_top5_ports(extracted_data):
sorted_ports = sorted(extracted_data.items(), key=lambda x: x[1], reverse=True)
top5_ports = sorted_ports[:5]
return top5_portsdef get_summary(extracted_data):total_volume = sum(extracted_data.values())
top1_port = max(extracted_data, key=extracted_data.get)
summary = f"宁波舟山港是全球货物吞吐量最大的港口,年吞吐量达到了{extracted_data[top1_port]:.2f}亿吨。全球排名情况如下:\n\n"
for port, volume in extracted_data.items():
percentage = (volume / total_volume) * 100
summary += f"{port}: {percentage:.2f}%\n"
return summarydef main():
url = "https://www.example.com/ranking"
html = get_html(url)
ranking_data = get_ranking(html)
extracted_data = extract_data(ranking_data)
top5_ports = get_top5_ports(extracted_data)
summary = get_summary(extracted_data)
print("
宁波舟山港世界排名
") print("") print(f"{summary}
") print("排名详细介绍
")
for i, (port, volume) in enumerate(top5_ports, 1):
print(f"{i}. {port}
") print("简介:
") print(f"{port}是一个位于{port}的港口,年吞吐量为{volume:.2f}亿吨。它在全球港口排名中位居第{i}位。
") print("特点:
") print("") print("未来发展:
") print("") print(f"print("
其他排名详细介绍
")
for i, (port, volume) in enumerate(ranking_data[5:], 6):
print(f"{i}. {port}
") print("简介:
") print(f"{port}是一个位于{port}的港口,年吞吐量为{volume:.2f}亿吨。它在全球港口排名中位居第{i}位。
") print("特点:
") print("") print("未来发展:
") print("") print(f"main()
- 上一篇:什么软件可以看散户资金流向