我试图自动从这个website中提取一组值的信息。我有一个起始和目标端口列表,例如THEODOSIA
和KERCH
,我需要提取每个起始-目标组合的计算距离、速度和天数。有人能告诉我如何在Python中实现这一点吗?另一个潜在的障碍是我列表中的端口有“短名称”,例如THEODOSIA
,它代表Port of Theodosia, Ukraine
。当您在搜索中输入THEODOSIA
时,网站会自动提供完整的建议,因此手动搜索也可以。然而,我不确定这在自动搜索中是如何工作的
我在网络抓取/搜索方面完全没有经验,所以在阅读了几篇在线文章后开始编写以下代码,但已经到了死胡同,我认为我的代码没有任何用处
from selenium import webdriver
from bs4 import BeautifulSoup
import pandas as pd
from webdriver_manager.chrome import ChromeDriverManager
import requests
#Example start and destination port values
df = pd.DataFrame({'StartPort':['THEODOSIA', 'ROSTOV'], 'DestinationPort':['KERCH', 'MARSEILLE']})
r = requests.get('http://ports.com/sea-route/')
soup = BeautifulSoup(r.content, 'html.parser')
rows = soup.findAll('tr', {"class": "span-7 prepend-top"})
startport = []
for a in soup.findAll('a',href=True, attrs={'class':"span-7 prepend-top"}):
startport=a.find('div', attrs={'class':"span-7 title ac_input"})
您可以使用他们的API获取完整的端口名。然后使用这些名称获取海上距离、速度和天数
例如:
印刷品:
相关问题 更多 >
编程相关推荐