質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

ただいまの
回答率

88.93%

C#でサイトのCSVを落としてきたい

解決済

回答 3

投稿

  • 評価
  • クリップ 1
  • VIEW 2,489

yamaguti

score 132

題のとおりなのですが、C#でCSVファイルをダウンロードしてきたいのですが
うまくいきません。
どうすれば取得できるでしょうか。
よろしくおねがいします。

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using System.IO;
using System.Net;

namespace CSVDL
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }

        private void button1_Click(object sender, EventArgs e)
        {
            string FileName = @"C:\japan-all-stock-data.csv";
            WebClient client = new WebClient();
            byte[] data = client.DownloadData("http://hesonogoma.com/stocks/japan-all-stock-data.html");
            File.WriteAllBytes(FileName, data);
        }
    }
}
  • 気になる質問をクリップする

    クリップした質問は、後からいつでもマイページで確認できます。

    またクリップした質問に回答があった際、通知やメールを受け取ることができます。

    クリップを取り消します

  • 良い質問の評価を上げる

    以下のような質問は評価を上げましょう

    • 質問内容が明確
    • 自分も答えを知りたい
    • 質問者以外のユーザにも役立つ

    評価が高い質問は、TOPページの「注目」タブのフィードに表示されやすくなります。

    質問の評価を上げたことを取り消します

  • 評価を下げられる数の上限に達しました

    評価を下げることができません

    • 1日5回まで評価を下げられます
    • 1日に1ユーザに対して2回まで評価を下げられます

    質問の評価を下げる

    teratailでは下記のような質問を「具体的に困っていることがない質問」、「サイトポリシーに違反する質問」と定義し、推奨していません。

    • プログラミングに関係のない質問
    • やってほしいことだけを記載した丸投げの質問
    • 問題・課題が含まれていない質問
    • 意図的に内容が抹消された質問
    • 過去に投稿した質問と同じ内容の質問
    • 広告と受け取られるような投稿

    評価が下がると、TOPページの「アクティブ」「注目」タブのフィードに表示されにくくなります。

    質問の評価を下げたことを取り消します

    この機能は開放されていません

    評価を下げる条件を満たしてません

    評価を下げる理由を選択してください

    詳細な説明はこちら

    上記に当てはまらず、質問内容が明確になっていない質問には「情報の追加・修正依頼」機能からコメントをしてください。

    質問の評価を下げる機能の利用条件

    この機能を利用するためには、以下の事項を行う必要があります。

回答 3

0

こんにちは。

DownloadDataではなく、
client.DownloadFile(@"http://xxx", FileName); で良いと思います。
Cドライブ直下だと権限周りで色々怒られるかもしれませんが、それはまた別問題ということで。

投稿

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

  • 2016/12/15 09:36

    CSVはC直下に落ちてきました。

    CSVの中身を空けると本来なら株式のデータが入ってるはずなのですが。
    中身はHTMLのようなものが入っています。
    以下に記載します。

    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
    <html>
    " <head>"
    " <meta http-equiv=""content-type"" content=""text/html; charset=utf-8"">"
    " <meta name=""description"" content=""讀懃エ「繝サ繧ス繝シ繝医・Excel逕ィCSV繝輔ぃ繧、繝ォ縺ョ繝€繧ヲ繝ウ繝ュ繝シ繝峨′蜿ッ閭ス縺ェ譌・譛ャ譬ェ蜈ィ驫俶氛縺ョ謚戊ウ・欠讓吶ョ繝シ繧ソ荳€隕ァ陦ィ縲ゅた繝シ繝域ゥ溯・繧剃スソ縺」縺ヲ謚戊ウ・欠讓吶ョ繝シ繧ソ縺ョ蜷・ィョ繝ゥ繝ウ繧ュ繝ウ繧ー繧定。ィ遉コ蜿ッ閭ス縲・>"
    " <title>譌・譛ャ譬ェ蜈ィ驫俶氛 謚戊ウ・欠讓吶ョ繝シ繧ソ・・SV繝・・繧ソ繝€繧ヲ繝ウ繝ュ繝シ繝牙庄閭ス・・/title>"
    " <link rel=""shortcut icon"" type=""image/ico"" href=""icon/chart.ico""> <style type=""text/css"" media=""screen"">"
    " @import ""http://ajax.aspnetcdn.com/ajax/jquery.dataTables/1.9.4/css/jquery.dataTables_themeroller.css"
    " @import ""http://ajax.aspnetcdn.com/ajax/jquery.ui/1.9.0/themes/smoothness/jquery-ui.css"
    " @import ""media/css/TableTools_JUI.css"";"
    " @import ""media/css/stock-prices.css"";"
    " @import ""media/css/cssmenu.css"";"
    " @import ""//maxcdn.bootstrapcdn.com/font-awesome/4.2.0/css/font-awesome.min.css"";"
    " </style>"
    " <script type=""text/javascript"" charset=""utf8"" src=""http://ajax.aspnetcdn.com/ajax/jQuery/jquery-1.8.3.min.js"
    " <script type=""text/javascript"" charset=""utf8"" src=""http://ajax.aspnetcdn.com/ajax/jquery.dataTables/1.9.4/jquery.dataTables.min.js"
    " <script type=""text/javascript"" charset=""utf8"" src=""media/js/ZeroClipboard.js""></script>"
    " <script type=""text/javascript"" charset=""utf8"" src=""media/js/TableTools.min.js""></script>"
    " <script type=""text/javascript"" charset=""utf8"" src=""media/js/japan-all-stock-data.js""></script>"
    " <script type=""text/javascript"" charset=""utf8"" src=""media/js/cssmenu.js""></script>"
    " <script type=""text/javascript"" charset=""utf8"" src=""media/js/analytics.js""></script>"
    " </head>"
    " <body>"
    " <div id=""menu-container"">"
    " <div id=""cssmenu"">"
    " <ul>"
    " <li class=""has-sub""><a href=""#""><i class=""fa fa-line-chart fa-2x""></i>&nbsp;&nbsp;譬ェ萓。荳€隕ァ陦ィ</a>"
    " <ul>"
    " <li><a href=""japan-all-stock-prices.html"">譌・譛ャ譬ェ蜈ィ驫俶氛</a></li>"
    " <li><a href=""nikkei225-stock-prices.html"">- 譌・邨・25 讒区・驫俶氛</a></li>"
    " <li><a href=""tosho-1st-stock-prices.html"">- 譚ア險シ荳€驛ィ</a></li>"
    " <li><a href=""tosho-2nd-stock-prices.html"">- 譚ア險シ莠碁Κ</a></li>"
    " <li><a href=""tosho-mothers-stock-prices.html"">- 譚ア險シ繝槭じ繝シ繧コ</a></li>"
    " <li><a href=""tosho-jasdaq-stock-prices.html"">- JASDAQ</a></li>"
    " <li><a href=""japan-local-exchange-stock-prices.html"">- 蝨ー譁ケ蟶ょエ</a></li>"
    " <li><a href=""tosho-etf-stock-prices.html"">譚ア險シ ETF繝サETN</a></li>"
    " <li><a href=""tosho-reit-stock-prices.html"">譚ア險シ REIT</a></li>"
    " <li><a href=""tosho-fund-and-others-stock-prices.html"">譚ア險シ 繝輔ぃ繝ウ繝峨・莉・/a></li>"
    " <li><a href=""all-nyse-stock-quotes-list-ja.html"">NYSE 蜈ィ驫俶氛</a>"
    " <li><a href=""all-nasdaq-stock-quotes-list-ja.html"">NASDAQ 蜈ィ驫俶氛</a>"
    " <li><a href=""all-amex-stock-quotes-list-ja.html"">NYSE AMEX 蜈ィ驫俶氛</a></li>"
    " </ul>"
    " </li>"
    " <li class=""active has-sub""><a href=""#""><i class=""fa fa-calculator fa-2x""></i>&nbsp;&nbsp;謚戊ウ・欠讓吶ョ繝シ繧ソ</a>"
    " <ul>"
    " <li class=""active-sub""><a href=""#"">譌・譛ャ譬ェ蜈ィ驫俶氛</a></li>"
    " <li><a href=""nikkei225-stock-data.html"">- 譌・邨・25 讒区・驫俶氛</a></li>"
    " <li><a href=""tosho-1st-stock-data.html"">- 譚ア險シ荳€驛ィ</a></li>"
    " <li><a href=""tosho-2nd-stock-data.html"">- 譚ア險シ莠碁Κ</a></li>"
    " <li><a href=""tosho-mothers-stock-data.html"">- 譚ア險シ繝槭じ繝シ繧コ</a></li>"
    " <li><a href=""tosho-jasdaq-stock-data.html"">- JASDAQ</a></li>"
    " <li><a href=""japan-local-exchange-stock-data.html"">- 蝨ー譁ケ蟶ょエ</a></li>"
    " <li><a href=""japan-all-stock-financial-results.html"">豎コ邂励・雋。蜍吶ョ繝シ繧ソ</a></li>"
    " <li><a href=""jsf-balance-data.html"">譌・險シ驥・陞崎ウ・イク譬ェ谿矩ォ・/a></li>"
    " <li><a href=""jsf-gyakuhibu-data.html"">譌・險シ驥・騾・律豁ゥ驫俶氛</a></li>"
    " </ul>"
    " </li>"
    " <li class=""has-sub""><a href=""#""><i class=""fa fa-shopping-cart fa-2x""></i>&nbsp;&nbsp;驕主悉繝・・繧ソ雋ゥ螢イ</a>"
    " <ul>"
    " <li><a href=""https://gum.co/vHwWW" target=""_blank"">2015蟷エ 騾壼ケエ・・000蜀・/a></li>"
    " <li><a href=""https://gum.co/tPru" target=""_blank"">2016蟷エ 1-6譛茨シ・00蜀・/a></li>"
    " </ul>"
    " </li>"
    " <li class=""has-sub""><a href=""#""><i class=""fa fa-cogs fa-2x""></i>&nbsp;&nbsp;繝・・繧ソ豢サ逕ィ莠倶セ・/a>"
    " <ul>"
    " <li><a href=""http://kamomenotoushi.hatenablog.com/entry/2015/11/01/140950" target=""_blank"">譬ェ蠑乗兜雉・驕狗畑險倬鹸陦ィ</a></li>"
    " <li><a href=""http://kamomenotoushi.hatenablog.com/entry/2016/01/02/000000" target=""_blank"">譬ェ蠑乗兜雉・驫俶氛豈碑シ・。ィ</a></li>"
    " <li><a href=""http://kamomenotoushi.hatenablog.com/entry/2016/02/07/000000" target=""_blank"">蟶ょエ邨ア險・謗ィ遘サ險倬鹸陦ィ</a></li>"
    " <li><a href=""http://kamomenotoushi.hatenablog.com/entry/2016/02/07/000000_1" target=""_blank"">豎コ邂苓イ。蜍・邨ア險域ッ碑シ・。ィ</a></li>"
    " <li><a href=""http://1000.hateblo.jp/entry/2014/11/30/003306" target=""_blank"">1000蜀・サ・荳区ェ縺ョ謗「邏「</a></li>"
    " </ul>"
    " </li>"
    " <li><a href=""https://twitter.com/moriban" target=""_blank""><i class=""fa fa-twitter fa-2x""></i>&nbsp;&nbsp;騾」邨。</a></li>"
    " <li><a href=""javascript:location.reload(true);""><i class=""fa fa-refresh fa-2x""></i>&nbsp;&nbsp;譖エ譁ー</a></li>"
    " </ul>"
    " </div>"
    " <div id=""adsense-bigbanner"">"
    " <script async src=""//pagead2.googlesyndication.com/pagead/js/adsbygoogle.js""></script>"
    " <!-- stocks-bigbanner -->"
    " <ins class=""adsbygoogle"""
    " style=""display:inline-block;width:468px;height:60px"""
    " data-ad-client=""ca-pub-1775276933151656"""
    " data-ad-slot=""7051071288""></ins>"
    " <script>"
    " (adsbygoogle = window.adsbygoogle || []).push({});"
    " </script>"
    " </div>"
    " </div>"
    " <div id=""container"">"
    " <div id=""dynamic"">"
    <table cellpadding="0" cellspacing="0" border="0" class="display" id="japan-all-stock-data">
    " <thead>"
    " <tr>"
    " <th width=""40"">SC</th>"
    " <th width=""180"">蜷咲ァー</th>"
    " <th width=""75"">蟶ょエ</th>"
    " <th width=""85"">讌ュ遞ョ</th>"
    " <th width=""80"">譎ゆセ。邱城。・br>(逋セ荳・・)</th>"
    " <th width=""90"">逋コ陦梧ク・br>譬ェ蠑乗焚</th>"
    " <th width=""60"">驟榊ス・br>蛻ゥ蝗槭j</th>"
    " <th width=""60"">1譬ェ<br>驟榊ス・/th>"
    " <th width=""60"">PER<br>・井コ域Φ・・/th>"
    " <th width=""60"">PBR<br>・亥ョ溽クセ・・/th>"
    " <th width=""60"">EPS<br>・井コ域Φ・・/th>"
    " <th width=""60"">BPS<br>・亥ョ溽クセ・・/th>"
    " <th width=""60"">譛€菴・br>雉シ蜈・鬘・/th>"
    " <th width=""60"">蜊伜・譬ェ</th>"
    " <th width=""70"">鬮伜€、<br>譌・莉・/th>"
    " <th width=""60"">蟷エ蛻晄擂<br>鬮伜€、</th>"
    " <th width=""70"">螳牙€、<br>譌・莉・/th>"
    " <th width=""60"">蟷エ蛻晄擂<br>螳牙€、</th>"
    " </tr>"
    " </thead>"
    " <tfoot>"
    " <tr>"
    " <th>SC</th>"
    " <th>蜷咲ァー</th>"
    " <th>蟶ょエ</th>"
    " <th>讌ュ遞ョ</th>"
    " <th>譎ゆセ。邱城。・br>(逋セ荳・・)</th>"
    " <th>逋コ陦梧ク・br>譬ェ蠑乗焚</th>"
    " <th>驟榊ス・br>蛻ゥ蝗槭j</th>"
    " <th>1譬ェ<br>驟榊ス・/th>"
    " <th>PER<br>・井コ域Φ・・/th>"
    " <th>PBR<br>・亥ョ溽クセ・・/th>"
    " <th>EPS<br>・井コ域Φ・・/th>"
    " <th>BPS<br>・亥ョ溽クセ・・/th>"
    " <th>譛€菴・br>雉シ蜈・鬘・/th>"
    " <th>蜊伜・譬ェ</th>"
    " <th>鬮伜€、<br>譌・莉・/th>"
    " <th>蟷エ蛻晄擂<br>鬮伜€、</th>"
    " <th>螳牙€、<br>譌・莉・/th>"
    " <th>蟷エ蛻晄擂<br>螳牙€、</th>"
    " </tr>"
    " </tfoot>"
    " <tbody>"
    " </tbody>"
    </table>
    " </div>"
    " <div id=""footer"">"
    " 讀懃エ「繝サ繧ス繝シ繝医・Excel逕ィCSV繝輔ぃ繧、繝ォ縺ョ繝€繧ヲ繝ウ繝ュ繝シ繝峨′蜿ッ閭ス縺ェ譌・譛ャ譬ェ蜈ィ驫俶氛縺ョ謚戊ウ・欠讓吶ョ繝シ繧ソ荳€隕ァ陦ィ縲ゅた繝シ繝域ゥ溯・・亥・蜷阪け繝ェ繝・け・峨r菴ソ縺」縺ヲ謚戊ウ・欠讓吶ョ繝シ繧ソ縺ョ蜷・ィョ繝ゥ繝ウ繧ュ繝ウ繧ー繧定。ィ遉コ蜿ッ閭ス縲ょケウ譌・15:15鬆・↓蠖捺律蟶ょエ繝・・繧ソ繧貞渚譏縲・br>"
    " "
    " &copy; Hesonogoma Tips"
    " </div>"
    " </div>"
    " </body>"
    </html>

    キャンセル

  • 2016/12/15 09:39

    DownloadDataメソッドの引数が"http://hesonogoma.com/stocks/japan-all-stock-data.html"なのでHTMLを取得しているだけでは。
    サーバーサイドどういう仕様なんでしょう。

    キャンセル

  • 2016/12/15 10:05

    CSV自体のURLを開発者ツールで、調べようとしましたが
    わかりませんでした。
    Save to CSVボタンを押したらデータをCSVに書き込んでいるのかもしれません。

    webサイトのボタンを押下する方法も検討してみます。

    キャンセル

0

はじめまして! まさにそのサイトの管理人のこもりばんと申します。
興味を持って頂き、ありがとうございます!

まずは前提事項からですが、既存のサービスではCSVファイルを自動取得することはできません。
詳しい処理方式は割愛しますが、CSVファイルをそもそも提供していないためです。

対して、この度、無料のトライアル運用を開始した会員向けファイルダウンロードサービスでは、
CSVファイルのダウンロード提供とプログラムによるファイルの自動取得を許可しています。

データフォーマットとしては、CSV形式とJSON形式に対応しています。
文字コード等、詳細は下記で公開している「readme_tech.txt」ファイルをご参照下さい。

日本株全銘柄 株価一覧表・投資指標データ:会員向けファイルダウンロードサービス

なお、1時間に30回のHTTPリクエストを上限とさせて頂いています。
高頻度のデータ取得やスクレイピングは、他のご利用者の迷惑になりますのでお控え下さい!

最後にC#のサンプルコードを記載しますので、ご参考になさって下さい。
よろしくお願い致します。

var uri = new Uri("https://hesonogoma.com/stocks/download/csv/japan-all-stock-prices/daily/japan-all-stock-prices.csv");
using (var webClient = new System.Net.WebClient())
{
    webClient.Credentials = new NetworkCredential("yourID", "yourPW");
    webClient.DownloadFile(uri, @"C:\Temp\japan-all-stock-prices.csv");
}

var uri = new Uri("https://hesonogoma.com/stocks/download/csv/japan-all-stock-prices/daily/japan-all-stock-prices.json");
using (var webClient = new System.Net.WebClient())
{
    webClient.Credentials = new NetworkCredential("yourID", "yourPW");
    webClient.DownloadFile(uri, @"C:\Temp\japan-all-stock-prices.json");
}

投稿

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

  • 2017/02/01 12:44

    サイト管理様
    いつもお世話になっております。

    サンプルコード並びに、サービスの紹介ありがとうございました。

    今後とも株式取引の参考にさせて頂きます。
    よろしくお願いします。

    キャンセル

  • 2017/02/01 19:57

    はい。ぜひ参考になさって下さい!
    株価ビッグデータの中には金脈が埋まっています。本当ですよ!

    キャンセル

check解決した方法

-7

フィックス致しました。

投稿

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

15分調べてもわからないことは、teratailで質問しよう!

  • ただいまの回答率 88.93%
  • 質問をまとめることで、思考を整理して素早く解決
  • テンプレート機能で、簡単に質問をまとめられる

関連した質問

同じタグがついた質問を見る