Python课程-w73班
Louyj's Blog
Toggle navigation
Python课程-w73班
Home
班级课件
课堂代码
课后作业
学习资料
Archives
Tags
2021-12-26课代码
2022-01-16 10:09:14
4
0
0
python-w73
``` ''' 如何查看网络请求: 打开浏览器, 通过F12快捷键打卡开发者工具, 在开发者工具网络(Network)选项卡中查看网络请求 浏览网站流程: 1. 客户端(浏览器)发送网络请求 2. 服务器(12306网站服务端)接收到用户请求,处理用户请求 3. 服务器发送处理结果给客户端(浏览器) 网络名词: Url: 是网站的唯一标识, 是网站的地址, 通过在浏览器中输入url即可访问指定的网站 Cookie: 网站识别用户的唯一标识 url类似于门牌号, cookie类似于钥匙 JSESSIONID=53E77D821DFA1A6370BF18B68D00D526; route=9036359bb8a8a461c164a04f8f50b252; BIGipServerotn=955253258.50210.0000; RAIL_EXPIRATION=1640156627608; RAIL_DEVICEID=HHUFxIoyq5IJ3XCexA1nnSNQtNz3vdfdA43QeppBvaM_rEhMdmROm-u3lkTrouIfO2De29t5zllpye_T-ZRw4wLXT00unHv7UxpO5NfFZjJQ4YuAfMfpUoKBEfxnLZgOXkOAu1L421JWJbzDmHykIonNyxG6DEyy; guidesStatus=off; highContrastMode=defaltMode; cursorStatus=off requests模块: 模拟客户端进行url请求 使用pip安装request模块: 打开cmd,运行 pip install requests ''' import requests # 导入request模块 # 使用request的get方法模拟浏览器访问12306网页 response = requests.get('https://kyfw.12306.cn/otn/resources/js/framework/station_name.js?station_version=1.9217') split_result = response.text.split('@') # print(split_result) ''' 忽略列表里的第一个元素: del split_result[0] # 删除第一个元素 split_result[1:] # 列表的切片操作 ''' station_names = {} for station_raw in split_result[1:]: station_raw_split = station_raw.split('|') # [bjb,北京北,VAP,beijingbei,bjb,0] station_names[station_raw_split[1]] = station_raw_split[2] print(station_names) ''' split_result 的格式为 bjb|北京北|VAP|beijingbei|bjb|0 bjd|北京东|BOP|beijingdong|bjd|1 如何将城市名和城市代码提取出来? 会用到的知识: for循环/字符串的分割(split) json数据结构和python数据结构的对应关系如下: JSON 里的object, 对应python字典 { "北京北": "VAP", "北京东": "BOP" } { '北京北': 'VAP', '北京东': 'BOP' } JSON 数组, 对应python里的list [ "北京北", "北京东" ] [ '北京北', '北京东' ] JSON int/float/boolea json和python是一一对应 ''' import json ''' json操作: dumps 是将对象(字典)转换成json字符串 dump 是将对象(字典)以json字符串的格式输出到文件里面 loads 将json字符串转换成python对象(字典) load 从文件里面读取内容,将json字符串转换成python对象(字典) ''' json_content = json.dumps(station_names) print(type(json_content)) print(json_content) # json.dump() ''' 文件操作 文件编码: 汉字的编码: GBK/GB2312 通用的编码: UTF-8 UTF-8>GBK/GB2312 json文件一般使用utf-8编码 ''' with open("station_name.json", "w", encoding="utf-8") as file: # json_content = json.dumps(station_names) # file.write(json_content) json.dump(station_names, file) ```
Pre:
2022-01-09课代码
Next:
2021-12-19课件
0
likes
4
Weibo
Wechat
Tencent Weibo
QQ Zone
RenRen
Submit
Sign in
to leave a comment.
No Leanote account?
Sign up now.
0
comments
More...
Table of content
No Leanote account? Sign up now.