使用 Java 以编程方式下载 CSV 文件

2024-04-09

场景:我用来研究股票数据的网站的页面上有一个“将数据导出到电子表格”的链接。将鼠标悬停在导出链接上时显示的 URL 的形式为http://www.stocksite.com/historical/export.php?symbol=C http://www.stocksite.com/historical/export.php?symbol=C .

问题:相反,我希望手动访问每只股票的页面来自动执行该任务。在 Java 中,如何以编程方式调用带有股票代码的站点并保存导出的 csv 文件? URL 和 URLConnection 类似乎是明显的起点,但我不确定从哪里开始。


您所需要做的就是获取 CSV 的风格InputStream.

InputStream input = new URL("http://example.com/file.csv").openStream();

然后你可以把它喂给任何像样的人Java CSV 解析器 API http://www.google.com/search?q=java+csv+parser+api。几乎他们中的任何一个都接受了以下风格的输入:InputStream or Reader。如果需要,您可以轻松装饰InputStream as a Reader using InputStreamReader http://download.oracle.com/javase/6/docs/api/java/io/InputStreamReader.html然后您可以将其提供给 CSV 解析器。

Reader reader = new InputStreamReader(input, "UTF-8");
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

使用 Java 以编程方式下载 CSV 文件 的相关文章

随机推荐

  • SiteMesh:更改响应的内容类型

    我试图说服 SiteMesh 装饰器更改响应的内容类型 但没有任何乐趣 内容类型最终总是与装饰后的 JSP 相同 而不是装饰器的内容类型 例如 假设我有一个带有标头的 JSP 我还有一个 SiteMesh 装饰器 JSP 它定义了以下内容
  • groupby.first() 和 groupby.head(1) 有什么区别?

    两者都返回每组第一行的 DataFrame 在阅读 API 参考时 它首先说 计算第一组值 但是当并排查看两个输出时 我没有发现重大差异 我错过了什么吗 df pd DataFrame id 1 1 1 2 2 3 3 3 3 4 4 5
  • iPhone - 在 UITextfield 下面显示错误消息的最佳方式是什么[关闭]

    Closed 这个问题是基于意见的 help closed questions 目前不接受答案 我有一个包含许多 UITextfields 如名称 密码 电子邮件等 的表单 在验证过程中 我想显示相应文本字段下方字段的错误消息 做这个的最好
  • 抓取和解析多页(aspx)表

    我正在尝试搜集有关灰狗比赛的信息 例如 我想刮http www gbgb org uk RaceCard aspx dogName Hardwick 20Serena http www gbgb org uk RaceCard aspx d
  • 如何在 R 中获取 AST 作为列表

    我有字符串 它描述数学公式 我想将其转换为有意义部分的列表 功能ast 确实知道如何解析它 将其显示为抽象语法树 但不返回 AST 我正在寻找一个返回树的函数 bb lt media urin A media urin B 2 lazyev
  • SLURM 每个节点提交多个任务?

    我发现了一些非常相似的问题 这些问题帮助我得到了一个似乎有效的脚本 但我仍然不确定我是否完全理解为什么 因此这个问题 我的问题 示例 在 3 个节点上 我想在每个节点上运行 12 个任务 总共 36 个任务 此外 每个任务都使用 OpenM
  • javascript 按子列表第二个条目对列表列表进行排序

    如何按最后一个元素的顺序对列表列表进行排序 这是迄今为止我最好的尝试 var mylist 1 c 3 a 5 b mylist sort function a b return a 1 b 1 我打电话给sort没有效果 并且mylist
  • CATextLayer 包裹了 sizeToFit?

    如果我设置textLayer wrapped YES 如何调整大小textLayer包含换行文本 即 我如何获得新的高度textLayer 基本上 我想要类似的东西 UILabel sizeToFit 您需要做的第一件事是获取文本的大小 值
  • 如何使用 Python/Glade 更改主窗口小部件?

    我对 GUI 编程或多或少是个新手 只是有一点点 Perl Tk 经验 我是 Python 新手 也是 Glade 新手 我想学习如何使用它们 我心中有一个程序 需要一个窗口 但该窗口的内容 小部件和所有内容 必须随着用户完成的每一步而改变
  • Model() 获得参数“nr_class”的多个值 - SpaCy 多分类模型(BERT 集成)

    您好 我正在致力于使用新的 SpaCy 模型实现多分类模型 5 类 en pytt bertbaseuncased lg 新管道的代码在这里 nlp spacy load en pytt bertbaseuncased lg textcat
  • Android Google Play 意图引荐来源网址

    我像这样启动 Google Play Intent intent new Intent Intent ACTION VIEW Uri parse market details id com example intent addFlags I
  • CSS 选择器的优先级是什么

    CSS 问题 如果两个不同的选择器应用于一个元素 谁会获胜 我知道这不应该发生 但我想调整遗留应用程序 而 CSS 却处于中间位置 The 血淋淋的细节 http www w3 org TR CSS21 cascade html casca
  • 在计算其他汇总统计数据的同时使用 n()

    我在使用以下方法准备汇总表时遇到问题dplyr基于以下数据集 set seed 1 df lt data frame rep sample c 2012 2016 10 replace T sample c Treat Control 10
  • 在本机反应中出现“无法读取 null 的属性‘pickAlgorithm’”错误

    我在运行时遇到错误npm install 错误是 npm ERR Cannot read property pickAlgorithm of null npm ERR A complete log of this run can be fo
  • 运行 nginx 的 django 服务器上的大型媒体文件出现 403 错误

    我正在使用 Nginx 和 Gunicorn 运行托管在 DigitalOcean 上的 Django 服务器 当我遇到 403 错误时 我尝试通过管理界面添加 2MB 图片 调查error log指示权限被拒绝 如下 2017 06 27
  • 在 Manjaro 上安装 MongoDB

    我在 Manjaro Linux 上安装 MongoDB 社区服务器时遇到困难 没有关于如何在基于 Arch 的系统上安装它的官方文档 并且 Pacman 在 AUR 存储库中找不到它 有人尝试过安装它吗 这是我安装时所做的 由于包装是无法
  • 如何仅使用位移位和逻辑操作将 unsigned int 加 1?

    我的作业 项目中有一个问题 仅使用以下方法将 1 添加到无符号整数位移位 and 逻辑运算符 函数中不应有任何 或 符号 我从前几天开始就在尝试 但还没有成功 到目前为止 我已经尝试过以下操作 int A B C lt lt 1 B C 有
  • 关闭 DataInputStream 也会关闭 FileInputStream 吗?

    FileInputStream fstream new FileInputStream someFile getPath DataInputStream in new DataInputStream fstream 如果我打电话in clo
  • Erlang TCP 套接字关闭

    为了学习 Erlang 我正在尝试实现一个基于gen tcp 不幸的是 我的代码似乎触发了一些有线行为 为了演示这个问题 我附上了我的实现的最小化版本 它足以重现该问题 无论 HTTP 请求是什么 它都只是传递静态 200 OK 当我尝试运
  • 使用 Java 以编程方式下载 CSV 文件

    场景 我用来研究股票数据的网站的页面上有一个 将数据导出到电子表格 的链接 将鼠标悬停在导出链接上时显示的 URL 的形式为http www stocksite com historical export php symbol C http