Python 3.10 解释器
Pycharm 编辑器
python源码、视频教程、插件安装教程、资料我都准备好了,直接在文末名片自取就可
import requests —> 数据请求模块 pip install requests
import csv -> 保存csv表格
import pandas -> 可以实现保存Excel表格文件 pip install pandas
如何安装python第三方模块:
win + R 输入 cmd 点击确定, 输入安装命令 pip install 模块名 (pip install requests) 回车
在pycharm中点击Terminal(终端) 输入安装命令
1. 明确需求: 明确采集的网站以及数据内容
- 网址: 雪球网
- 数据: 股票数据
2. 抓包分析: 分析 股票数据, 可以请求那个网址能够得到
- 打开开发者工具: F12 / 右键点击检查选择 network (网络)
- 点击第二页数据
数据包: https://stock.xueqiu.com/v5/stock/screener/quote/list.json?page=2&size=30&order=desc&order_by=amount&exchange=CN&market=CN&type=sha
请求网址:
请求方式:
请求头:
1. 发送请求 -> 模拟浏览器对于url发送请求
2. 获取数据 -> 获取服务器返回响应数据 <整个数据>
3. 解析数据 -> 提取我们需要数据
4. 保存数据 -> 保存表格文件 < csv / Excel > 中
'''
python资料获取看这里噢!! 小编 V:Pytho8987(记得好友验证备注:6 否则可能不通过)
即可获取:文章源码/教程/资料/解答等福利,还有不错的视频学习教程和PDF电子书!
'''
# 导入数据请求模块 <需要安装>
import requests
# 导入格式化输出模块
from pprint import pprint
# 导入csv模块
import csv
# 导入pandas模块 <需要安装>
import pandas as pd
“”"
保存表格文件
“”"
# 创建文件对象
f = open('股票.csv', mode='w', encoding='utf-8', newline='')
# fieldnames 字段名 表头一行数据 <前面保存字典的键>
csv_writer= csv.DictWriter(f, fieldnames=[
'股票代码',
'股票名称',
'当前价',
'涨跌额',
'涨跌幅',
'年初至今',
'成交量',
'成交额',
'换手率',
'市盈率(TTM)',
'股息率',
'市值',
])
# 写入表头
csv_writer.writeheader()
# 创建一个空列表
content_list = []
“”"
发送请求 -> 模拟浏览器对于url发送请求
“”"
'''
python资料获取看这里噢!! 小编 V:Pytho8987(记得好友验证备注:6 否则可能不通过)
即可获取:文章源码/教程/资料/解答等福利,还有不错的视频学习教程和PDF电子书!
'''
# 模拟浏览器
headers = {
'Cookie': 's=av17ye9exq; xq_a_token=cf755d099237875c767cae1769959cee5a1fb37c; xq_r_token=e073320f4256c0234a620b59c446e458455626d9; xq_id_token=eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJ1aWQiOi0xLCJpc3MiOiJ1YyIsImV4cCI6MTcwMTk5NTg4MCwiY3RtIjoxNzAwNTYzOTE3MDU2LCJjaWQiOiJkOWQwbjRBWnVwIn0.EbAa9h0fB9H_sH415f3x8r2CQiKmPbXZMnuKCy401scB1lMQKOffws6WTwPD2UzFWnntYxIQYSJpX509VUYYgCQkZ_bYtLbtYd5PfxLhWx7coauYA4d3x5aZolzB3eP5IthaYAb0Kbj3MPK8LVRBhABpRGr4wajISuABFNezroM_-5dpiOYK7Rk0UXtU2Qhrzxi1BVCgFUhPP-oR_vKenBw5tLzSqa6aO7CukgI7JVb-6LiymuBquE8FE-de8Vs3evai0fvtjiqryrH3EWM3nmDQIayigHRrYo595bD32kUPP4swHF5U2fwbLHTntIRAm9LsXn8sVf-6sUdgHoYZGg; cookiesu=931700563933974; u=931700563933974; device_id=5da9e0ae658f9fcd3d89078312131fb7; Hm_lvt_1db88642e346389874251b5a1eded6e3=1700563934; Hm_lpvt_1db88642e346389874251b5a1eded6e3=1700563934',
'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/119.0.0.0 Safari/537.36'
}
for page in range(1, 58):
print(f'==============正在采集第{page}页数据内容==============')
# 请求网址
url = f'https://stock.xueqiu.com/v5/stock/screener/quote/list.json?page={page}&size=30&order=desc&order_by=amount&exchange=CN&market=CN&type=sha'
# 发送请求
response = requests.get(url=url, headers=headers)
“”"
获取数据 -> 获取服务器返回响应数据 <整个数据>
解析数据 -> 提取我们需要数据
解决数据方法根据获取数据来选择的:
字典取值方法 -> 键值对取值 (根据冒号左边的内容[键], 提取冒号右边的内容[值])
“”"
'''
python资料获取看这里噢!! 小编 V:Pytho8987(记得好友验证备注:6 否则可能不通过)
即可获取:文章源码/教程/资料/解答等福利,还有不错的视频学习教程和PDF电子书!
'''
json_data = response.json() # 返回json字典数据
# for循环遍历
for index in json_data['data']['list'][1:]:
# 提取数据保存到字典里面, 方便后续保存表格文件
dit = {
'股票代码': index['symbol'],
'股票名称': index['name'],
'当前价': index['current'],
'涨跌额': index['chg'],
'涨跌幅': index['percent'],
'年初至今': index['current_year_percent'],
'成交量': index['volume'],
'成交额': index['amount'],
'换手率': index['turnover_rate'],
'市盈率(TTM)': index['pe_ttm'],
'股息率': index['dividend_yield'],
'市值': index['market_capital'],
}
# 保存数据
csv_writer.writerow(dit)
# 把字典添加到空列表里面
content_list.append(dit)
print(dit)
data = pd.DataFrame(content_list)
data.to_excel('股票.xlsx', index=False)
汉化: file -> setting -> plugins -> 搜索Chinese
批量替换方法:
选择替换的内容
ctrl + R
输入正则命令进行需要替换的内容
:.* (.*?): (.*)
, '$1': '$2',
感谢你观看我的文章呐~本次航班到这里就结束啦
希望本篇文章有对你带来帮助 ,有学习到一点知识~
躲起来的星星也在努力发光,你也要努力加油(让我们一起努力叭)。
最后,宣传一下呀~更多源码、资料、素材、解答、交流皆点击下方名片获取呀