在水木上看到有人在问到想用python去获取股票的信息,sina finance上面的那些数据的是通过js控制的,会根据股票代码去获取实时信息然后根据用户友好的方式展示出来。
首先,新浪的一个url让我们可以获取股票的信息:http://hq.sinajs.cn/?list=sh600000
然后,我简单写了个程序可以将其中有用的股票名称/当前价格/涨跌幅等信息提取出来。本来是不难的,只是在数字的处理和格式化输出这两方面,我还找了些资料看了下才实现了。
实现的输出如下:
—————————————————————
股票名称:超图软件 涨跌幅:2.07 最新价:22.73
股票名称:浪潮信息 涨跌幅:-2.91 最新价:19.33
股票名称:东软集团 涨跌幅:-3.93 最新价:10.52
股票名称:涪陵电力 涨跌幅:0.0 最新价:11.31
股票名称:中金黄金 涨跌幅:-2.01 最新价:22.41
—————————————————————-
简单的代码实现如下:
#! /usr/bin/python3
# coding=utf-8
”’
Created on Nov 9, 2011
@author: 笑遍世界
”’
import urllib.request
def get_price(code):
url = ‘http://hq.sinajs.cn/?list=%s’ % code
req = urllib.request.Request(url)
#如果不需要设置代理,下面的set_proxy就不用调用了。由于公司网络要代理才能连接外网,所以这里有set_proxy…
req.set_proxy(‘proxy.XXX.com:911′, ‘http’)
content = urllib.request.urlopen(req).read()
str = content.decode(‘gbk’)
data = str.split(‘”‘)[1].split(‘,’)
name = “%-6s” % data[0]
price_current = “%-6s” % float(data[3])
change_percent = ( float(data[3]) – float(data[2]) )*100 / float(data[2])
change_percent = “%-6s” % round (change_percent, 2)
print(“股票名称:{0} 涨跌幅:{1} 最新价:{2}”.format(name, change_percent, price_current) )
def get_all_price(code_list):
for code in code_list:
get_price(code)
code_list = ['sz300036', 'sz000977', 'sh600718', 'sh600452', 'sh600489']
get_all_price(code_list)
Python脚本:获取股票信息的更多相关文章
-
python脚本获取本机公网ip
1.获取公网IP地址方式,访问:http://txt.go.sohu.com/ip/soip 2.python脚本实现: #!/usr/bin/python # -*- coding:utf8 -*- ...
-
使用Python脚本获取指定格式文件列表的方法
在Python环境下获取指定后缀文件列表的方式. 来源* 这里简单以*.txt的作为例子. 使用glob(推荐) import glob, os os.chdir(" ...
-
用python脚本获取运行环境中的module 列表
由于脚本运行在远程环境,总报错说一些module没有.所以决定彻底对环境进行一次摸底. 于是,用如下代码即可实现: #!/usr/bin/env python import sys try: #pri ...
-
通过python脚本获取服务器硬件信息
#!/usr/bin/python # coding:utf-8 """ 采集机器自身信息 1 主机名 2 内存 3 ip与mac地址 4 cpu信息 5 硬盘分区信息 ...
-
python脚本获取主机Mac地址
#!/usr/bin/python import re import subprocess ARP = "arp" IP = "192.168.128.27" ...
-
python脚本获取文件的创建于修改日期并计算时间差
由于在计算一个算法的运行时间的时候,需要将文件的创建日期与修改日期读取到,然后计算两者之差,在网上搜索了相关的程序之后,自己又修改了一下,把代码贴在这里,供以后查阅使用,也希望可以帮到其他人. # - ...
-
Python脚本获取Linux系统信息
# -*- coding:utf-8 -*- import os import subprocess import re import hashlib #对字典取子集 def sub_dict(for ...
-
python3脚本获取本机公网ip
python脚本获取本机公网ip 1.获取公网IP地址方式,访问:http://txt.go.sohu.com/ip/soip 2.代码实现 import requests import re r ...
-
一个获取指定目录下一定格式的文件名称和文件修改时间并保存为文件的python脚本
摘自:http://blog.csdn.net/forandever/article/details/5711319 一个获取指定目录下一定格式的文件名称和文件修改时间并保存为文件的python脚本 ...
随机推荐
-
AngularJS----服务,表单,模块
AngularJS中的服务 服务是一个函数或对象,AngularJS中可以创建自己的服务或使用内建服务.$http是AngularJS中最常见的服务,服务向服务器发送请求,应用响应服务器传送过来的数据 ...
-
oracle信息统计
优化器统计范围: 表统计: --行数,块数,行平均长度:all_tables:NUM_ROWS,BLOCKS,AVG_ROW_LEN:列统计: --列中唯一值的数量(NDV),NULL值的数量,数据分 ...
-
AEScrypto WEB and ANDROID (GITHUB)
https://github.com/evgenyneu/aes-crypto-android https://github.com/evgenyneu/aes-crypto-web https:// ...
-
python调用java
这么个标题多少有点蛋疼的感觉,两个都是互联网时代的语言,学习成本和执行效率也差不多,之所以会产生这种需求,多半是想在python中引用java的类,例如安卓和hadoop的生态圈,基本是java代码的 ...
-
lightoj 1032 二进制的dp
题目链接:http://lightoj.com/volume_showproblem.php?problem=1032 #include <cstdio> #include <cst ...
-
2016/01/10 C++ Primer 小记 —— 命令行编译环境配置
OK!第一篇博文!自贺一下! 今日看了此书的前几页.嗯,说得挺全,基础易懂. 之前学过c++,但没用过命令行编译. 本人用的VS里的编译器,文件名是cl.exe,在VC目录下. 虽然有了编译器,但并不 ...
-
根据identifier从StoryBoard中获取对象,UIButton的图片文件位置
@import url(http://i.cnblogs.com/Load.ashx?type=style&file=SyntaxHighlighter.css);@import url(/c ...
-
利用VS2005进行dump文件调试(17篇博客)
前言:利用drwtsn32或NTSD进行程序崩溃处理,都可以生成可用于调试的dmp格式文件.使用VS2005打开生成的DMP文件,能很方便的找出BUG所在位置.本文将讨论以下内容: 1. 程序编译选 ...
-
html基础知识2(有序无序列表,表格)2017-03-08
摘要:php 基础知识2 重点:有序无序列表:<a>标签:<table>标签 内容容器 1.段落标签 <p></p> 注: 执行前后换行,并空一行 ...
-
matplotlib之直接保存图片
自动保存图表:pyplot.savefig('D:\\pic.png'),替代了 pyplot.show(). # 使用matplotlib.pyplot.scatter绘制散点 import mat ...