在水木上看到有人在问到想用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脚本:获取股票信息的更多相关文章

  1. python脚本获取本机公网ip

    1.获取公网IP地址方式,访问:http://txt.go.sohu.com/ip/soip 2.python脚本实现: #!/usr/bin/python # -*- coding:utf8 -*- ...

  2. 使用Python脚本获取指定格式文件列表的方法

    在Python环境下获取指定后缀文件列表的方式. 来源stackoverflow 这里简单以*.txt的作为例子. 使用glob(推荐) import glob, os os.chdir(" ...

  3. 用python脚本获取运行环境中的module 列表

    由于脚本运行在远程环境,总报错说一些module没有.所以决定彻底对环境进行一次摸底. 于是,用如下代码即可实现: #!/usr/bin/env python import sys try: #pri ...

  4. 通过python脚本获取服务器硬件信息

    #!/usr/bin/python # coding:utf-8 """ 采集机器自身信息 1 主机名 2 内存 3 ip与mac地址 4 cpu信息 5 硬盘分区信息 ...

  5. python脚本获取主机Mac地址

    #!/usr/bin/python import re import subprocess ARP = "arp" IP = "192.168.128.27" ...

  6. python脚本获取文件的创建于修改日期并计算时间差

    由于在计算一个算法的运行时间的时候,需要将文件的创建日期与修改日期读取到,然后计算两者之差,在网上搜索了相关的程序之后,自己又修改了一下,把代码贴在这里,供以后查阅使用,也希望可以帮到其他人. # - ...

  7. Python脚本获取Linux系统信息

    # -*- coding:utf-8 -*- import os import subprocess import re import hashlib #对字典取子集 def sub_dict(for ...

  8. python3脚本获取本机公网ip

    python脚本获取本机公网ip   1.获取公网IP地址方式,访问:http://txt.go.sohu.com/ip/soip 2.代码实现 import requests import re r ...

  9. 一个获取指定目录下一定格式的文件名称和文件修改时间并保存为文件的python脚本

    摘自:http://blog.csdn.net/forandever/article/details/5711319 一个获取指定目录下一定格式的文件名称和文件修改时间并保存为文件的python脚本 ...

随机推荐

  1. Android平台一些流行的使用3D技术开发的锁屏

    题外话:从2007年android系统的发布开始,到2008年的第一款手机问世,再到现在击败塞班,wm,黑霉,然后遍地开花,2013年,智能机出货超过了功能机,android功不可没.一路走来,虽然a ...

  2. 抽象工厂模式和autofac的使用总结

    抽象工厂模式和依赖注入的使用目的都是降低对象直接依赖耦合关系,应该说依赖注入是抽象工厂模式的一种升华,功能更强大. 说到抽象工厂的模式,一般都要先解释下简单工厂,简单工厂就是将对象的实例化抽取出来形成 ...

  3. c.Tom and paper

    Tom and paper Description There is a piece of paper in front of Tom, its length and width are intege ...

  4. HDU 4121

    http://www.bnuoj.com/v3/problem_show.php?pid=10277 //#pragma comment(linker, "/STACK:16777216&q ...

  5. NET Core 1.0

    VS Code从零开始开发调试.NET Core 1.0 使用VS Code 从零开始开发调试.NET Core 1.0. .NET Core 是一个开源的.跨平台的 .NET 实现. VS Code ...

  6. php前端控制器设计1

    The primary role of a front controller in web-based applications is to encapsulate the typical reque ...

  7. setitimer()函数使用

    setitimer()为Linux的API,并非C语言的Standard Library,setitimer()有两个功能,一是指定一段时间后,才执行某个function,二是每间格一段时间就执行某个 ...

  8. adxl345的STM32驱动程序和硬件设计

    一.硬件电路接口图片 1.ADXL345硬件接口图片使用的是SPI端口进行通信,这样读取数据比较快且后续也可以转化为IIC通信接口. 在网上找一些发现IIC接口的比较多,所以本人就DIY做SPI的通信 ...

  9. Derby的下载安装和使用,(和JAVA中使用Derby)

    首先是Java环境变量要配置: 1.打开我的电脑--属性--高级--环境变量 2.新建系统变量JAVA_HOME 和CLASSPATH 变量名:JAVA_HOME 变量值:C:\Program Fil ...

  10. Android 电话自己主动接听和挂断具体解释

    1.通过aidl及反射实现挂断电话 详细分三步: (1)ITelephony.aidl ,必须新建com.android.internal.telephony包并放入ITelephony.aidl文件 ...