我正在尝试从该网站自动提取信息以获取一组值。我有一个起点和终点港口的列表,例如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"})