从12306获取全国火车站的字典
尝试从12306获取全国火车站的数据
在做玩具项目的时候,需要用到全国各个火车站的字典。只好上12306,手动拿了!拿起键盘一顿狂敲。毕竟人生苦短,我用Python!
上Python大法
import re
import xlwt
import requests
def search_station(station_names):
# 得到的数据为:火车站名的首字母,火车站名,火车站id
# 从12306获取的数据中,通过正则匹配过滤数据
# data用来存放数据
station_names_data = []
# 从s中通过正则匹配得到"@bjb|北京北|"这样的数据形式所有符合的数据
it = re.finditer(r"@((\w){3})\|((.){2,5})\|((\w){3})", station_names)
for match in it:
# 从"@bjb|北京北|VAP"过滤数据,得到"bjb|北京北|VAP"这样形式的数据
num = re.sub(r'@', "", match.group())
# 从"bjb|北京北|VAP"过滤数据,得到"bjb 北京北 VAP"这样形式的数据
num = re.sub(r'\|', " ", num)
# 初始化d列表
d = []
# 将"bjb 北京北