【练习】python脚本看股票实时盈亏

#!/usr/bin/python
import urllib2
import sys

def stock_data(stock_id, stock_num, purchase_price):
    url = ‘http://hq.sinajs.cn/list=%s%06d‘ % ((stock_id == 1 or stock_id > 600000) and ‘sh‘ or ‘sz‘, stock_id)
    page = urllib2.urlopen(url)
    stock_data = page.read().split(‘"‘)[1]
    name = stock_data.split(‘,‘)[0]
    opening_price = float(stock_data.split(‘,‘)[1])
    closing_price = float(stock_data.split(‘,‘)[2])
    price = float(stock_data.split(‘,‘)[3])
    high = float(stock_data.split(‘,‘)[4])
    low = float(stock_data.split(‘,‘)[5])
    print ‘%-10s‘ % name,
    print ‘\033[%dm‘ % (price > closing_price and 31 or 32),
    print ‘%10.2f‘ % price,
    print ‘%10.2f‘ % (price - closing_price),
    print ‘%9.2f%%‘ % ((price - closing_price) * 100 / closing_price),
    print ‘\033[0m‘,
    print ‘%6.2f%%‘ % ((high - closing_price) * 100 /closing_price),
    print ‘%6.2f%%‘ % ((low - closing_price) * 100 / closing_price),
    print ‘%6.2f%%‘ % ((high - low) * 100 / closing_price),
    if stock_num > 0:
        #print ‘%10d‘ % stock_num,
        #print ‘%10.3f‘ % purchase_price,
        print ‘\033[%dm‘ % (price > purchase_price and 31 or 32),
        print ‘%10.2f‘ % ((price - purchase_price) * stock_num),
        print ‘%9.2f%%‘ % ((price - purchase_price) * 100 / purchase_price),
    print ‘\033[0m‘
    return (price - purchase_price) * stock_num

if len(sys.argv) != 2:
    print "Usage : sys.argv[0] <stock_list_file>"
    sys.exit(1)

total = 0

f = file(sys.argv[1], ‘r‘)
while True:
    line = f.readline()
    if len(line) == 0:
        break
    line = line.split(‘\n‘)[0]
    line = line.split(‘\r‘)[0]
    line = line.split(‘#‘)[0]
    if len(line) > 0:
        args = line.split(‘ ‘)
        if len(args) == 3:
            total += stock_data(int(args[0]), int(args[1]), float(args[2]))
        if len(args) == 1:
            stock_data(int(args[0]), 0, 0)
f.close()

print "\033[1;37;4%dm%.2f\033[0m" % (total > 0 and 1 or 2, total)

用法

时间: 2024-12-27 08:04:08

【练习】python脚本看股票实时盈亏的相关文章

inotify+rsync实现实时同步(附解决crontab中无法执行python脚本的问题)

1.准备环境 # 系统支持的话,下面的目录就会存在 ls /proc/sys/fs/inotify/ rpm -qa inotify-tools yum -y install inotify-tools 2.inotifywait监控目录状态变化 /usr/bin/inotifywait -mrq --timefmt '%d/%m/%y %H:%M' --format '%T %w%f' -e delete,create,close_write /data # 可以把时间去掉 /usr/bin/

简易Python脚本爬取我爱我家网站信息

最近杭州房价涨得好凶,要不要跟风买房,确实是个头疼的问题,不过做点准备总是没坏处的.前段时间我找了一个我爱我家的中介了解了下情况,他提到我爱我家官网,说上面信息的时效性和准确度都不错,可以时常关注一下.本着程序员的天性,一切可以用脚本偷懒的事情就都不要麻烦自己动手了,于是就写了一个脚本,用于监测我爱我家官网的消息变动,有新的房源信息就发短信给自己. 首先分析一下可行性,爬取网站,取得HTML页面的信息当然是没什么难度的,接下来就是从中整理出有用的信息,然后发短信给自己了. 发送短信的服务,搜索了

Python脚本远程批量执行命令

摘要 本文主要写用python脚本远程连接多台服务器,然后批量执行命令,最终返回命令执行结果. 这个可以说是Ansible,Puppet等工具的最简单的雏形. 做运维的同学应该都知道的. 正文 multi_task.py #_*_coding:utf-8_*_ import  multiprocessing import paramiko import getpass import ConfigParser class MultiTask(object):     '''handles all 

python脚本修改hosts文件

记一次使用python脚本来修改hosts文件,由于公司服务器需要换ip地址,服务器里都是Linux系统,而hosts文件中有些解析的ip,手动一台一台的解析太麻烦,就写了这个脚本.本来以为感觉很简单,但是写的过程真不好写,也试过shell脚本,不过也不好写.然后就直接用python写,也找了一些网上的教程,不过也没有很好的解决问题.下面把脚本贴出来记录下 #!/usr/bin/python #coding:utf8 import os import sys import re hostsfil

将Python脚本文件包装成可执行文件

将Python脚本文件包装成可执行文件,其目的有二: 一则: 不需要依赖Python编译器就可以运行软件 二则: 不想让自己的源码公布出去 常用的工具有: py2exe.cx_freeze等 [工具:py2exe] 安装py2exe 安装该工具很简单: 只需要从官方网站:http://www.py2exe.org/下载与版本对应的安装程序,点击下一步即可完成安装. 安装后,执行import py2exe,不报错则表示安装成功! >>> import py2exe >>>

用 Python 脚本实现对 Linux 服务器的监控

hon 分享到:8 原文出处: 曹江华 目前 Linux 下有一些使用 Python 语言编写的 Linux 系统监控工具 比如 inotify-sync(文件系统安全监控软件).glances(资源监控工具)在实际工作中,Linux 系统管理员可以根据自己使用的服务器的具体情况编写一下简单实用的脚本实现对 Linux 服务器的监控. 本文介绍一下使用 Python 脚本实现对 Linux 服务器 CPU 内存 网络的监控脚本的编写. Python 版本说明 Python 是由 Guido va

Windows运行python脚本文件

开始学习python就是听说这个语言写脚本文件特别方便,简单使用.学了一段时间,但是直到现在我才直到直到怎么在Windows的cmd上运行脚本文件. 之前一直都是在pycharm上运行,并不实用. 百度上说的已经很清楚了,但是还是需要自己亲手实验一下.http://jingyan.baidu.com/article/22fe7ced18776f3002617f2e.html 我刚开始也是加了环境变量了 啊,但是一直不好使,原来我的程序开头没有加上  #!usr/bin/python  表示该脚本

【转载】关于Python脚本开头两行的:#!/usr/bin/python和# -*- coding: utf-8 -*-的作用 &ndash; 指定文件编码类型

下面的内容来自:http://www.cnblogs.com/blueskylcc/p/5332642.html, 对方也是转的,不过没有找到转载的出处: 1.#!/usr/bin/python 是用来说明脚本语言是 python 的 是要用 /usr/bin下面的程序(工具)python,这个解释器,来解释 python 脚本,来运行 python 脚本的. 2.# -*- coding: utf-8 -*- 是用来指定文件编码为 utf-8 的 详情可以参考:PEP 0263 - Defin

python脚本删除n天之前的文件

管理Linux经常用到python脚本,然后写了脚本后,经常为了生成的文件占用磁盘空间而犯愁,这些写个函数以方便以后使用: def rmdaybefore(pfile, days):     """     Delete pfile diectory days before files below     :param pfile: local path     :param days: before days     :return: a list os.listdir p