首页 > 编程语言 >Python爬取东方财富网股票数据.py

Python爬取东方财富网股票数据.py

时间:2023-06-02 09:58:25浏览次数:43  
标签:Python py 爬取 result print 数据 append stock

print("数据来源:东方财富网-行情中心-沪深京A股")
import re,requests
import pandas as pd
url = "http://94.push2.eastmoney.com/api/qt/clist/get?cb=jQuery1124040399874179311124_1685159655748&pn=1&pz=6000&po=1&np=1&ut=bd1d9ddb04089700cf9c27f6f7426281&fltt=2&invt=2&wbp2u=|0|0|0|web&fid=f3&fs=m:0+t:6,m:0+t:80,m:1+t:2,m:1+t:23,m:0+t:81+s:2048&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&_=1685159655749"
print("\n1:正在爬取数据...")
data = requests.get(url).text
p = re.compile(r'(\"f\d*\":.+?)[,}]')
result = p.findall(data)
print("\n2:数据爬取成功!!!")
stock = {'代码':[],'名称':[],'最新价':[],'涨跌幅%':[],'涨跌额':[],'成交量(手)':[],'成交额':[],'振幅%':[],'最高':[],'最低':[],'今开':[],'昨收':[],'量比':[],'换手率%':[],'市盈率':[],'市净率':[]}
print("\n3:数据正在导出...")
for i in range(1,len(result),31):
stock['代码'].append(result[i+10][6:])
stock['名称'].append(result[i+12][6:])
stock['最新价'].append(result[i][5:])
stock['涨跌幅%'].append(result[i+1][5:])
stock['涨跌额'].append(result[i+2][5:])
stock['成交量(手)'].append(result[i+3][5:])
stock['成交额'].append(result[i+4][5:])
stock['振幅%'].append(result[i+5][5:])
stock['最高'].append(result[i+13][6:])
stock['最低'].append(result[i+14][6:])
stock['今开'].append(result[i+15][6:])
stock['昨收'].append(result[i+16][6:])
stock['量比'].append(result[i+8][6:])
stock['换手率%'].append(result[i+6][5:])
stock['市盈率'].append(result[i+7][5:])
stock['市净率'].append(result[i+20][6:])
df = pd.DataFrame(stock)
df.to_excel(r'示例.xlsx',index=False)
print("\n4:数据导出成功!!!")
input()

标签:Python,py,爬取,result,print,数据,append,stock
From: https://www.cnblogs.com/snoweo/p/17450939.html

相关文章

  • 十一、python列表list
    十一、python列表list列表是一种基本的序列数据结构(字符串和元组也属于序列)列表是一种可变值的数据类型(再次强调数字,字符串,元组是不可变类型)1.列表的创建使用中括号括起来,里面的数据称为元素。可以放同类型数据,也可以放不同类型数据,但通常是同类型。os=["rhel","centos","......
  • 一、第一个python脚本
    一、第一个python脚本1.使用vi或vim直接写#vim1.py#!/usr/bin/python #声明类型,指明解释器命令路径#-*-coding:utf-8-*- #指定字符格式为utf-8(可以打印中文),python3不用再指定了print"hellowworld" #python2的写法,python3执行会报错print("helloworld") ......
  • 四、python变量
    四、变量1.变量的特点可以反复存储数据可以反复取出数据可以反复更改数据2.变量的命名规则变量名只能是字母、数字或下划线的任意组合变量名的第一个字符不能是数字变量名要有见名知义的效果,如UserName,user_name变量名区分大小写以下关键字不能声明为变量名(关键字......
  • 三、python注释
    三、注释1.单行注释:#被注释内容在#后面建议添加一个空格,然后在写注释的内容在代码的后面添加注释:注释和代码之间要至少有两个空格2.多行注释:三引号(三个双引或三个单引)里包含注释内容小技巧:在pycharm里可以用ctrl+/来给多行加#注释或去掉注释。......
  • 五、python基本数据类型分类
    五、Python基本数据类型分类1.基本数据类型(1)数字int整型(1,2,-1,-2)float浮点型(34.678)bool布尔型(True/False)complex复数(4+3J,不应用于常规编程,这种仅了解一下就好(2)字符串str单引号和双引号内表示的内容为字符串“helloworld""12345"(3)列表list......
  • 六、python输入输出
    六、python输入输出1.输入python里的input输入用法name=input("whatisyourname:")age=input("whatisyourage:")#input输入的直接就为str类型,不需要再str()转换了print(name,"你"+age+"岁了")2.输出(1)普通输出print("="*10) #表示连续打印10个=符号......
  • Python | 数据分析和计算机视觉 | 学习记录
    计算机视觉empty()和vstack(),hstack():使用循环创建新数组时,可以先用np.empty()创建空数组并确定数组维度,循环中创建新的行数组,再使用vstack()合并数组A=np.empty([0,2],dtype="float32")for...:Axy=...A=np.vsatck(A,Axy)A=vstack()不要漏掉A=......
  • How to use variable in Python String All In One
    HowtousethevariableinPythonStringAllInOne如何在Python字符串中使用变量demos(......
  • 【python】Python报错:RecursionError: maximum recursion depth exceeded in comparis
    问题描述今天测试程序的时候报错了RecursionError:maximumrecursiondepthexceeded通过查阅资料发现原因是查询过相关文档和资料后才发现了问题原因,python的递归深度是有限制的,默认为1000。当递归深度超过1000时,就会报错。解决方案可以将递归的深度修改的大一些,即可解决......
  • 【python】集合
    集合集合(set)是一个无序的不重复元素序列。可以使用大括号 {} 或者 set() 函数创建集合,注意:创建一个空集合必须用 set() 而不是 {},因为 {} 是用来创建一个空字典。创建格式:parame={value01,value02,...}set(value)#或者集合内置方法完整列表:add()为集合添......