当前位置:网站首页>Get all stock data of big a
Get all stock data of big a
2022-07-05 12:12:00 【ziyi813】
Learn to practice reptile instances , Get stock data
Dongcai Weiwu , No crawler restrictions
https://www.eastmoney.com/robots.txt
obtain 4 Thousands of stock data are saved as csv
import requests
import re
import json
import time
def getApiRequest(url):
try:
headerParams = {
'user-agent' : 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/95.0.4638.69 Safari/537.36' }
r= requests.get(url, timeout=30, headers = headerParams)
r.raise_for_status()
return r
except:
return 'http request error !'
def rinseData(res):
try:
jsdata = re.findall(r'\(.*?\)', res.text)
dicts = json.loads(jsdata[0][1:len(jsdata[0])-1 ])
diff = dicts.get('data', []).get('diff', [])
return diff
except:
return []
def writeCsv(f, lslist):
try :
for item in lslist:
tmp = [item.get('f12'),item.get('f14'),item.get('f15'),item.get('f3'),item['f4'],item['f5'],item['f6'],item['f7'],item['f2'],item['f16'],item['f17'],item['f18'],item['f10'],item['f8'],item['f9'],item['f23'] ]
datastr = ''
for s in tmp:
datastr += str(s) + ','
f.write(datastr[:len(datastr)-1] + "\n")
except:
return 'write csv file Error'
def main():
total = 236
page = 20
start = time.perf_counter() # Starting time
f = open('gp.csv', 'w+', encoding='utf-8')
f.write(' Code , name , The latest price , applies , Up and down , volume ( hand ), turnover , The amplitude , The highest , The minimum , today , Yesterday , Volume ratio , Turnover rate , P / E ratio ( dynamic ), Market to net ratio \n')
for p in range(total):
a = "*" * p
b = "." * (total -p)
c = (p/total)*100
dur = time.perf_counter() - start
print("\r{:^3.0f}%[{}->{}]{:.2f}s".format(c,a,b,dur),end="")
url = 'http://81.push2.eastmoney.com/api/qt/clist/get?cb=jQuery1124017220261478010612_1636785244249&pn='+ str(p) +'&pz='+str(page)+'&po=1&np=1&ut=bd1d9ddb04089700cf9c27f6f7426281&fltt=2&invt=2&fid=f3&fs=m:0+t:6,m:0+t:80,m:1+t:2,m:1+t:23&fields=f1,f2,f3,f4,f5,f6,f7,f8,f9,f10,f12,f13,f14,f15,f16,f17,f18,f20,f21,f23,f24,f25,f22,f11,f62,f128,f136,f115,f152&_=1636785244294'
res = getApiRequest(url)
lslist = rinseData(res)
writeCsv(f, lslist)
f.close()
print("\n"+" end of execution ".center(total//2,"-"))
main()

边栏推荐
- Video networkstate property
- redis集群中hash tag 使用
- Select drop-down box realizes three-level linkage of provinces and cities in China
- II. Data type
- Understand kotlin from the perspective of an architect
- 【L1、L2、smooth L1三类损失函数】
- Troubleshooting of high memory usage of redis in a production environment
- 谜语1
- Thoughts and suggestions on the construction of intelligent management and control system platform for safe production in petrochemical enterprises
- 语义分割实验:Unet网络/MSRC2数据集
猜你喜欢

July Huaqing learning-1

pytorch-权重衰退(weight decay)和丢弃法(dropout)

16 channel water lamp experiment based on Proteus (assembly language)

Mmclassification training custom data

pytorch-多层感知机MLP

【上采样方式-OpenCV插值】

Matlab label2idx function (convert the label matrix into a cell array with linear index)

Splunk configuration 163 mailbox alarm

How to clear floating?
![[cloud native | kubernetes] actual battle of ingress case (13)](/img/1a/9404f6dcedd15827fa45f8f6f4c093.png)
[cloud native | kubernetes] actual battle of ingress case (13)
随机推荐
【上采样方式-OpenCV插值】
Video networkstate property
【TFLite, ONNX, CoreML, TensorRT Export】
redis集群中hash tag 使用
Principle of redis cluster mode
跨平台(32bit和64bit)的 printf 格式符 %lld 输出64位的解决方式
【pytorch 修改预训练模型:实测加载预训练模型与模型随机初始化差别不大】
【TFLite, ONNX, CoreML, TensorRT Export】
强化学习-学习笔记3 | 策略学习
II. Data type
Wireless WiFi learning 8-channel transmitting remote control module
什么是数字化存在?数字化转型要先从数字化存在开始
一类恒等式的应用(范德蒙德卷积与超几何函数)
Pytorch weight decay and dropout
Two minutes will take you to quickly master the project structure, resources, dependencies and localization of flutter
【 YOLOv3中Loss部分计算】
July Huaqing learning-1
【load dataset】
Multi table operation - sub query
Acid transaction theory