无法解析来自天气网站的数据

Unable to parse data from weather website

嘿,我想解析来自以下网站的天气数据:http://www.indiaweather.gov.in

如果你发现你有一个搜索栏,可以让你输入任何印度城市的名称,当你点击“开始”时,你最终会进入一个包含该城市天气数据的页面。

谁能帮我写一个脚本,让我输入城市的名称,并显示城市的天气数据?

我不知道如何解析数据。

谢谢!

你可以用美丽的汤!在特定 html 标签之间获取所需数据。如果您想自己做,您可以通过调用网站的 api post 您的数据。首先安装请求。 pip install requests 然后

import re
import requests


# the data is between align="left"><font size="3px"> and </font> in each specific part so we use re to find it
def find_data(line):
    return re.search('align="left"><font size="3px">(.*?)</font>', line).group(1)

params = {
    'tags': city_name,
    'submit': 'Go'
}

response = requests.post('http://www.indiaweather.gov.in/?page_id=942', data=params).content.splitlines()

try:
    current_temp = find_data(response[357])
    max_temp = find_data(response[362])
    min_temp = find_data(response[369])
    last_day_rainfall = find_data(response[376])
    current_wind_direction = find_data(response[382])
    current_wind_speed = find_data(response[389])
    current_dew_point = find_data(response[396])
    current_sea_level_pressure = find_data(response[403])
    print(current_temp, max_temp, min_temp, last_day_rainfall, current_wind_direction, current_wind_speed,
          current_dew_point, current_sea_level_pressure)

except IndexError:
    print('No Info Found For %s' % params['tags'])