如何基于已有区域列创建对应sub_area子区域列?Python求助
问题与尝试代码
我有一个区域列表:
bareas = ['Hosa road', 'Agara', 'Koramangala 4th block', 'Ali Asker road', 'Singasandra']
(实际列表较长,此处仅展示部分项)。我希望为数据集创建名为sub_area的新列,标注住宅所属的子区域名称。
可通过指定网页查询住宅与子区域的对应关系,共有8个子区域:
BOMMANAHALLI, DASARAHALLI, MAHADEVAPURA, BYATARAYANAPURA, WEST, EAST, SOUTH, RR_NAGARA
我是编程初学者,若问题表述不清请见谅。
我尝试了以下代码(已移除原代码中无意义的esri-search__form语句):
import requests from bs4 import BeautifulSoup import pandas as pd df2015 = pd.read_csv('https://raw.githubusercontent.com/the-curious-analyst/Sem2NITDSProject/main/tanker-water-data-2015.csv', usecols = [*range(0,9,1)]) bareas = list(df2015['Area where apartment is situated'].unique()) zone_list = [] for area in bareas: url = "https://kgis.ksrsac.in/Bbmpgis/" data = {'search': area, 'submit': 'Find Address or Place'} response = requests.post(url, data=data) soup = BeautifulSoup(response.content, 'html.parser') zone_element = soup.find('div', class_='lblzn') if zone_element: zone_list.append(zone_element.text) else: zone_list.append(None) print(zone_list)
内容的提问来源于stack exchange,提问作者dooby
相关产品推荐
相关产品推荐

