当前位置: 首页 > news >正文

公司网站有哪些wordpress mdui

公司网站有哪些,wordpress mdui,app注册拉新平台,建设网站建设什么征琴代码逻辑 初始化 (init 方法): 设置请求头信息。设置车站版本号。 同步车站信息 (synchronization 方法): 发送GET请求获取车站信息。返回服务器响应的文本。 提取信息 (extract 方法): 从服务器响应中提取车站信息字符串。去掉字符串末尾的…

代码逻辑

  • 初始化 (init 方法):
    • 设置请求头信息。
    • 设置车站版本号。
  • 同步车站信息 (synchronization 方法):
    • 发送GET请求获取车站信息。
    • 返回服务器响应的文本。
  • 提取信息 (extract 方法):
    • 从服务器响应中提取车站信息字符串。
    • 去掉字符串末尾的多余字符。
  • 处理信息 (process 方法):
    • 提取并处理车站信息。
    • 打印车站总数。
    • 创建一个新的车站字典,只包含所需的字段。
    • 调用 save_station 方法保存车站信息。
  • 保存车站信息 (save_station 方法):
    • 将车站信息保存到本地JSON文件。
  • 查找含有关键词的车站 (find_keyword_station 静态方法):
    • 从本地文件加载车站信息。
    • 根据关键词查找符合条件的车站。
  • 查找以指定字符结尾的车站 (find_stations_with_last_char 方法):
    • 从本地文件加载车站信息。
    • 找出以指定字符结尾的车站名称。
    • 调用 save_matching_stations 方法保存结果。
  • 保存匹配的车站 (save_matching_stations 方法):
    • 将匹配的车站信息保存到本地JSON文件。
  • 查找所在城市的车站 (find_stations_in_city 方法):
    • 从本地文件加载车站信息。
    • 找出所在城市为指定城市的车站。
  • 主程序入口 (if name == “main” 块):
    • 实例化 Station 类。
    • 调用 process 方法处理车站信息。
    • 调用 find_stations_with_last_char 方法查找以特定字符结尾的车站。
    • 调用 find_keyword_station 方法查找含有关键词的车站。
    • 调用 find_stations_in_city 方法查找所在城市的车站。

完整代码

import json
import re
import requests# 定义车站信息的URL
URL_STATION_NAME = 'https://kyfw.12306.cn/otn/resources/js/framework/station_name.js'class Station:def __init__(self):# 设置请求头self.headers = {'User-Agent': "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) ""Chrome/123.0.0.0 Safari/537.36"}# 获取车站版本号self.version = '1.9320'def synchronization(self):# 发送GET请求获取车站信息response = requests.get(URL_STATION_NAME, headers=self.headers, params={"station_version": self.version})return response.textdef extract(self):# 提取响应中的车站信息response = self.synchronization()response = response.replace("var station_names =", '').strip()return response[:-2]  # 去掉末尾的多余字符def process(self):# 处理提取的数据response = self.extract()response = re.findall(r'@(.*?)\|\|\|', response)print(f'共有{len(response)}个车站')response = [i.split("|") for i in response]# 创建一个新的车站字典,只包含所需的字段station_dict = []for item in response:station_info = {"车站名": item[1],"车站代码": item[2],"车站编号": item[5],"所在城市": item[7],"城市编号": item[6]}station_dict.append(station_info)self.save_station(station_dict)return station_dictdef save_station(self, station_dict):# 将车站信息保存到本地文件with open('resource/station_dict.json', 'w', encoding='utf-8') as f:json.dump(station_dict, f, ensure_ascii=False, indent=4)@staticmethoddef find_keyword_station(keyword, _type='station'):# 查找含有keyword的站名with open('resource/station_dict.json', 'rt', encoding='utf-8') as f:station_dict = json.load(f)if _type == 'station':response = [item for item in station_dict if keyword.lower() in item["车站名"].lower()]elif _type == 'code':response = [item for item in station_dict if keyword.lower() in item["车站代码"].lower()]else:response = []return responsedef find_stations_with_last_char(self, char):# 查找所有字典的key里最后一个字是指定字符的站名,并保存结果到JSON文件with open('resource/station_dict.json', 'rt', encoding='utf-8') as f:station_dict = json.load(f)# 使用列表推导式来找到符合要求的站名matching_stations = [item for item in station_dict if item['车站名'].endswith(char)]# 保存结果到JSON文件self.save_matching_stations(matching_stations, char)return matching_stationsdef save_matching_stations(self, matching_stations, char):# 将车站信息保存到本地文件filename = f'resource/stations_with_last_char_{char}.json'with open(filename, 'w', encoding='utf-8') as f:json.dump(matching_stations, f, ensure_ascii=False, indent=4)def find_stations_in_city(self, city_name):# 查找所在城市为指定城市的车站with open('resource/station_dict.json', 'rt', encoding='utf-8') as f:station_dict = json.load(f)# 使用列表推导式来找到符合要求的站名,并排除不需要的字段matching_stations = [{k: v for k, v in item.items() if k not in ['所在城市', '城市编号']}for item in station_dict if city_name.lower() in item['所在城市'].lower()]return matching_stations# 主程序入口
if __name__ == "__main__":station = Station()station.process()result = station.find_stations_with_last_char('东')print(f"找到 {len(result)} 个以 '东' 结尾的站名")result = station.find_stations_with_last_char('西')print(f"找到 {len(result)} 个以 '西' 结尾的站名")result = station.find_stations_with_last_char('南')print(f"找到 {len(result)} 个以 '南' 结尾的站名")result = station.find_stations_with_last_char('北')print(f"找到 {len(result)} 个以 '北' 结尾的站名")# 查找含有'湛江'的站名keyword = '湛江'result = station.find_keyword_station(keyword, _type='station')print(result)# 查找所在城市为'湛江'的车站city_name = '湛江'result = station.find_stations_in_city(city_name)print(f"找到 {len(result)} 个位于 '{city_name}' 的车站:")print(result)

运行结果

在这里插入图片描述

本文参考了这个项目,在此表示感谢,但由于该项目需要配置flask,笔者对此并不熟悉,于是自己抽取出查询车站的代码并完善了相关功能,不再需要其他配置。

http://www.sczhlp.com/news/132935/

相关文章:

  • 苏州建网站的公dokuwiki wordpress
  • 哪个视频网站做直播销售wordpress更改邮箱设置
  • 周口网站建设费用wordpress 整合ckplayer
  • wordpress主题整站郑州网站托管服务
  • 社交网络架构。京东场景题:亿级用户100Wqps 社交关系如何设计?如何查看我的关注,关注我的?
  • go 面试题
  • 事件和图形界面(暂未完成)
  • 长春网站排名优化价格网站5g空间
  • 图片网站推广长春科技网站建设
  • 网站视频主持人网电子商务是建网站
  • 做本地网站要服务器吗百度收录查询
  • 做传销网站互联网公司裁员
  • 商业网站建设目标wordpress 链接修改密码
  • 创办网站互联网十大排行榜
  • 做贸易进出口要什么网站平台笔记本做网站外网访问
  • 企业网站的建设步骤包括北京网站建设方案排名
  • o2o网站建设新闻南宁seo营销推广
  • 免费网站自助建站系统湖南做网站 就问磐石网络专业
  • 什么是sql 慢日志。哈罗面试:没开sql慢日志,怎么发现慢 sql?
  • Spring连环炮。哈罗面试:Spring Bean生命周期,Spring怎么创建Bean的,BFPP和BPP的x别
  • redis 大 key 优化。哈罗面试:redis 有个大 key需要在线优化, 不能影响现有业务,请求不能大量到库,怎么优化?
  • ACL高可用架构。希音面试:第三方挂了,我们总在背锅。来一 靠谱的 高可用方案,让 外部依赖 稳如泰山
  • 软工9.24
  • wordpress建博客网站吗成都公众号小程序开发
  • 用pycharm做网站高端网页开发公司
  • 大型门户网站建设效果网页中网站设计规划流程
  • 用html5制作个人网站网易云企业网站建设模板
  • 怎么用vs2010做网站北京 网站设计公司
  • 沧州网站网站建设内蒙古网站备案怎么做
  • 医疗类网站前置审批哪里可以引流到精准客户呢