目的:最近有个项目,一条公交线路上,有n个站点。现在对每个站点附近的基站,进行聚合。首先,通过爬虫并利用高德API,获取了相应的站点的经纬度信息。然后利用基站维度表(包涵经纬度),计算距离公交站点的所有基站。
步骤一:爬取公交站
爬虫的内容相对简单,本文不在赘述。相关内容,可以自行学习,也可以在评论里探讨。
import requests
import numpy as np
import pandas as pd
from bs4 import BeautifulSoup
import re
url = 'http://guangzhou.8684.cn/x_61c8b4b8'#8684公交网
res = requests.get(url).text
soup = BeautifulSoup(res, 'html.parser')
bus_load = soup.findAll('div',{'class':'bus_site_layer'})
aaa = []
for one in bus_load:
p = r'<a\shref.*?>(.*?)</a>'
a = re.findall(p, str(one))
aaa.append(a)
stations = aaa[0] + aaa[1]
stations = [one + '公交站' for one in stations]
out:'海珠客运站(总站)公交站',
'海珠客运站公交站',
'南洲名苑(瑞宝花园)公交站'