題のとおりなのですが、C#でCSVファイルをダウンロードしてきたいのですが
うまくいきません。
どうすれば取得できるでしょうか。
よろしくおねがいします。
C#
1using System; 2using System.Collections.Generic; 3using System.ComponentModel; 4using System.Data; 5using System.Drawing; 6using System.Linq; 7using System.Text; 8using System.Threading.Tasks; 9using System.Windows.Forms; 10using System.IO; 11using System.Net; 12 13namespace CSVDL 14{ 15 public partial class Form1 : Form 16 { 17 public Form1() 18 { 19 InitializeComponent(); 20 } 21 22 private void button1_Click(object sender, EventArgs e) 23 { 24 string FileName = @"C:\japan-all-stock-data.csv"; 25 WebClient client = new WebClient(); 26 byte[] data = client.DownloadData("http://hesonogoma.com/stocks/japan-all-stock-data.html"); 27 File.WriteAllBytes(FileName, data); 28 } 29 } 30} 31
気になる質問をクリップする
クリップした質問は、後からいつでもMYページで確認できます。
またクリップした質問に回答があった際、通知やメールを受け取ることができます。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
回答3件
0
はじめまして! まさにそのサイトの管理人のこもりばんと申します。
興味を持って頂き、ありがとうございます!
まずは前提事項からですが、既存のサービスではCSVファイルを自動取得することはできません。
詳しい処理方式は割愛しますが、CSVファイルをそもそも提供していないためです。
対して、この度、無料のトライアル運用を開始した会員向けファイルダウンロードサービスでは、
CSVファイルのダウンロード提供とプログラムによるファイルの自動取得を許可しています。
データフォーマットとしては、CSV形式とJSON形式に対応しています。
文字コード等、詳細は下記で公開している「readme_tech.txt」ファイルをご参照下さい。
日本株全銘柄 株価一覧表・投資指標データ:会員向けファイルダウンロードサービス
なお、1時間に30回のHTTPリクエストを上限とさせて頂いています。
高頻度のデータ取得やスクレイピングは、他のご利用者の迷惑になりますのでお控え下さい!
最後にC#のサンプルコードを記載しますので、ご参考になさって下さい。
よろしくお願い致します。
C#
1var uri = new Uri("https://hesonogoma.com/stocks/download/csv/japan-all-stock-prices/daily/japan-all-stock-prices.csv"); 2using (var webClient = new System.Net.WebClient()) 3{ 4 webClient.Credentials = new NetworkCredential("yourID", "yourPW"); 5 webClient.DownloadFile(uri, @"C:\Temp\japan-all-stock-prices.csv"); 6} 7 8var uri = new Uri("https://hesonogoma.com/stocks/download/csv/japan-all-stock-prices/daily/japan-all-stock-prices.json"); 9using (var webClient = new System.Net.WebClient()) 10{ 11 webClient.Credentials = new NetworkCredential("yourID", "yourPW"); 12 webClient.DownloadFile(uri, @"C:\Temp\japan-all-stock-prices.json"); 13}
投稿2017/01/31 17:23
総合スコア12
0
こんにちは。
DownloadData
ではなく、
client.DownloadFile(@"http://xxx", FileName);
で良いと思います。
Cドライブ直下だと権限周りで色々怒られるかもしれませんが、それはまた別問題ということで。
投稿2016/12/14 14:01
総合スコア4791
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2016/12/15 00:07
2016/12/15 00:36
2016/12/15 00:39
2016/12/15 01:05
あなたの回答
tips
太字
斜体
打ち消し線
見出し
引用テキストの挿入
コードの挿入
リンクの挿入
リストの挿入
番号リストの挿入
表の挿入
水平線の挿入
プレビュー
質問の解決につながる回答をしましょう。 サンプルコードなど、より具体的な説明があると質問者の理解の助けになります。 また、読む側のことを考えた、分かりやすい文章を心がけましょう。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2017/02/01 03:44
2017/02/01 10:57