Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- module main;
- import std.stdio;
- import std.conv;
- import std.array;
- import std.string;
- import std.algorithm;
- import std.uri;
- import dhttpclient;
- struct Quote
- {
- string symbol; // s
- string name; // n
- double lastTrade; // l1
- string currency; // c4
- string date; // d1
- string time; // t1
- }
- Quote getQuote(string symbol)
- {
- const request = "snl1c4d1t1";
- const url =
- "http://finance.yahoo.com/d/quotes.csv?e=.csv"
- ~ "&f=" ~ request
- ~ "&s=" ~ symbol.encode;
- auto http = new HTTPClient();
- auto data =
- http.get(url)
- .chomp
- .split(",")
- .map!(s => s.removechars("\""));
- Quote q =
- {
- symbol: data[0],
- name: data[1],
- lastTrade: data[2].to!double,
- currency: data[3],
- date: data[4],
- time: data[5]
- };
- return q;
- }
- void main(string[] args)
- {
- string s = "AAPL"; // Apple Inc.
- if (args.length > 1)
- s = args[1];
- auto q = getQuote(s);
- writefln("Symbol: %s", q.symbol);
- writefln("Name: %s", q.name);
- writefln("Last trade: %s %s (%s %s)",
- q.lastTrade,
- q.currency,
- q.date,
- q.time);
- }
Add Comment
Please, Sign In to add comment