[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖

[文件操作] 【已解决】批处理如何下载网页中的多页表格到本地excel里?

本帖最后由 uuu888s 于 2015-3-5 11:29 编辑

现在想把http://data.eastmoney.com/zrz/dxzf.html 里的35页数据下载到本地excel里
试了下 excel---数据---导入外部数据---新建web查询    貌似第一页都不能完整导入
请教大牛有什么思路 可以一次性下载该数据(共35页)
感谢!
不要哭让萤火虫带着你逃跑 乡间的歌谣永远的依靠

本帖最后由 uuu888s 于 2015-3-4 13:00 编辑

http://data.eastmoney.com/zrz/data.aspx?type=dx&style=zf&page=1&pageSize=1850&sortType=G&sortRule=-1&jsname=wKPapAYy&rt=47514817
貌似所有数据连接  如何把这些数据 还原到一个excel表里?
不要哭让萤火虫带着你逃跑 乡间的歌谣永远的依靠

TOP

本帖最后由 pcl_test 于 2015-3-4 14:58 编辑

回复 2# uuu888s
1、浏览器打开http://data.eastmoney.com/zrz/da ... AYy&rt=47514817,并把所有的内容复制粘贴到1.txt里
2、打开1.txt,用记事本替换功能把 "," 替换成<br> ,把数据首尾不必要的字符删掉(这步也可用word打开1.txt,用word替换功能把 "," 替换成^p ,这样就可以忽略第三步)
3、把1.txt重命名为1.html,并用浏览器打开,把所有的内容复制粘贴到2.txt里
4、把2.txt重命名为2.csv,打开2.csv另存为xls表格即可
1

评分人数

TOP

本帖最后由 uuu888s 于 2015-3-4 14:43 编辑

回复 3# pcl_test


  试了下 可行 但是这个数据经常要更新  每次都这样搞有点麻烦了 能否写个批处理   感谢~~
不要哭让萤火虫带着你逃跑 乡间的歌谣永远的依靠

TOP

能否写个批处理   感谢~~
不要哭让萤火虫带着你逃跑 乡间的歌谣永远的依靠

TOP

回复 3# pcl_test


把网页文件转换为纯文本的命令行工具HtoX32c
http://bbs.bathome.net/thread-1974-1-1.html
我帮忙写的代码不需要付钱。如果一定要给,请在微信群或QQ群发给大家吧。
【微信公众号、微信群、QQ群】http://bbs.bathome.net/thread-3473-1-1.html
【支持批处理之家,加入VIP会员!】http://bbs.bathome.net/thread-67716-1-1.html

TOP

你要的 xls 在这里,保存为 test.hta 运行即可:
  1. <script src=http://data.eastmoney.com/zrz/data.aspx?type=dx&style=zf&page=1&pageSize=1850&sortType=G&sortRule=-1&jsname=wKPapAYy&rt=47514817></script>
  2. <script src=http://www.bathome.net/lib/xdate.js></script>
  3. <script>
  4. xls = ['股票代码\t股票简称\t相关链接\t发行方式\t发行总数(万股)\t发行价格\t最新价\t发行日期\t增发上市日期\t锁定期']
  5. var data = wKPapAYy.data
  6. for(var i=0;i<data.length;i++){
  7. var I = data[i].split(",");
  8. var z = I[0],
  9. y = I[1],
  10. r = (I[4] == "") ? "-" : I[4],
  11. l = (I[5] == "") ? "-" : I[5],
  12. a = (isNaN(I[7]) || I[7] == "") ? I[7] : parseFloat(I[7]).toFixed(2),
  13. j = (isNaN(I[8]) || I[8] == "") ? I[8] : parseFloat(I[8]).toFixed(2),
  14. w = (I[9] == "" || I[9] == "-") ? "-" : new XDate(Date.parse(I[9].replace(/-/ig, "/"))).toString("MM-dd"),
  15. t = (I[11] == "" || I[11] == "-") ? "-" : new XDate(Date.parse(I[11].replace(/-/ig, "/"))).toString("MM-dd"),
  16.     _sdq = I[14] == "" ? "&-" : I[14],
  17.     _hq_link = "http://quote.eastmoney.com/" + z + ".html"
  18.    
  19.     xls.push([z,y,_hq_link,r,l,a,j,w,t,_sdq].join('\t'))
  20. }
  21. var fso = new ActiveXObject('Scripting.FileSystemObject')
  22. var ts = fso.CreateTextFile('输出.xls',true,true)
  23. ts.Write(xls.join('\r\n'))
  24. ts.Close()
  25. alert('Bingo!')
  26. close()
  27. </script>
复制代码
1

评分人数

TOP

本帖最后由 uuu888s 于 2015-3-11 08:56 编辑

大牛 我想再在xls里添加自定义的一列,该列里的数值为 最新价减去发行价( 也就是差价G-H )这个怎么在你的代码里实现
不要哭让萤火虫带着你逃跑 乡间的歌谣永远的依靠

TOP

回复 8# uuu888s


    [z,y,_hq_link,r,l,a,j,w,t,_sdq] 改成 [z,y,_hq_link,r,l,a,j,j-a,w,t,_sdq] 即可,标题栏那里应该很直观,你自己看着改下

TOP

返回列表