标题:求助:如何将网上的表格内容下载下来?谢谢!
只看楼主
closeall
Rank: 1
等 级:新手上路
帖 子:42
专家分:0
注 册:2017-1-18
结帖率:66.67%
已结贴  问题点数:30 回复次数:29 
求助:如何将网上的表格内容下载下来?谢谢!
网址:http://data.,这个版面上的‘分红送配详细列表’的数据想要下载下来,其他的不用了,如何写代码?我一点不会,求大家帮帮忙吧!谢谢!
搜索更多相关主题的帖子: 网上 内容 数据 表格 列表 
2021-05-05 14:50
林月儿
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:湖南
等 级:版主
威 望:138
帖 子:2276
专家分:10647
注 册:2015-3-19
得分:0 
按f12,打开console,输入$(".dataview-body tbody").text()回车

剑栈风樯各苦辛,别时冰雪到时春
2021-05-05 16:19
closeall
Rank: 1
等 级:新手上路
帖 子:42
专家分:0
注 册:2017-1-18
得分:0 
回复 2楼 林月儿
我是想在vfp form中,能做个循环,自动下载所有股票的这个信息,不只是一只股票。但我不会这种从网上下的命令,比如在prg中也行。想写各PRG,下来后存到一个表之中。谢谢回复
2021-05-05 17:00
sdta
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:江苏省连云港市
等 级:版主
威 望:323
帖 子:9621
专家分:26174
注 册:2012-2-5
得分:0 
JSON中的个别字段的数据类型与表中的数据类型不符合,转换稍微麻烦些。

坚守VFP最后的阵地
2021-05-05 17:59
sdta
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:江苏省连云港市
等 级:版主
威 望:323
帖 子:9621
专家分:26174
注 册:2012-2-5
得分:0 
是这个结果?

坚守VFP最后的阵地
2021-05-05 19:08
sdta
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:江苏省连云港市
等 级:版主
威 望:323
帖 子:9621
专家分:26174
注 册:2012-2-5
得分:30 
程序代码:
* VFP9 代码
CREATE CURSOR 分红送配 (报告期 C(10), 业绩披露日期 C(10), 送转总比例 N(6,1), 送股比例 N(6,1), 转股比例 N(6,1), 现金分红比例 C(50), 股息率_% N(6, 2),;
    每股收益_元 N(6,2), 每股净资产_元 N(6,2), 每股公股金_元 N(6,2), 每股未分配利润_元 N(6,2), 净利润同比增长_% N(6, 2), 总股本_亿 N(6,1),;
    预案公告日 C(10), 股权登记日 C(10), 除权除息日 C(12), 方案进度 C(20), 最新公告日期 C(10))
oHTTP=NEWOBJECT("MSXML2.XMLHTTP")
TEXT TO cUrl NOSHOW TEXTMERGE
http://dcfm./EM_MutiSvcExpandInterface/api/js/get?callback=jQuery112305016151387317396_1620197753903&st=ReportingPeriod&sr=-1&ps=50&p=1&type=DCSOBS&js=%7B%22data%22%3A(x)%2C%22pages%22%3A(tp)%7D&cmd=000001&token=894050c76af8597a853f5b408b759f5d
ENDTEXT
lcFld = "ReportingPeriod,ResultsbyDate,SZZBL,SGBL,ZGBL,AllocationPlan,GXL,EarningsPerShare,NetAssetsPerShare,MGGJJ,MGWFPLY,JLYTBZZ,TotalEquity,YAGGR,GQDJR,CQCXR,ProjectProgress,NOTICEDATE"
ALINES(laFld, lcFld, ",")
oHTTP.Open("GET", cUrl, .F.)
oHTTP.Send()
lcText = STRCONV(STRCONV(oHTTP.ResponseBody, 11),2)
lcText = STREXTRACT(lcText, '[{"', '}]')
FOR lnJ = 1 TO ALINES(laText, lcText, '},{"')
    APPEND BLANK
    FOR lnK = 1 TO ALINES(laStr, laText[lnJ], '":', ',"') STEP 2
        IF ASCAN(laFld, laStr[lnK]) = 0
            LOOP 
        ENDIF 
        DO CASE
            CASE laStr[lnK] == "ReportingPeriod"
                REPLACE 报告期 WITH &laStr[lnK + 1]
            CASE laStr[lnK] == "ResultsbyDate"
                REPLACE 业绩披露日期 WITH &laStr[lnK + 1]
            CASE laStr[lnK] == "SGBL"
                REPLACE 送股比例 WITH IIF(VARTYPE(&laStr[lnK + 1]) == "C", 0, &laStr[lnK + 1])
            CASE laStr[lnK] == "ZGBL"
                REPLACE 转股比例 WITH IIF(VARTYPE(&laStr[lnK + 1]) == "C", 0, &laStr[lnK + 1]) , 送转总比例 WITH 送股比例 + 转股比例
            CASE laStr[lnK] == "AllocationPlan"
                REPLACE 现金分红比例 WITH &laStr[lnK + 1]
            CASE laStr[lnK] == "GXL"
                REPLACE 股息率_% WITH IIF(VARTYPE(&laStr[lnK + 1]) == "C", 0, &laStr[lnK + 1] * 100)
            CASE laStr[lnK] == "EarningsPerShare"
                REPLACE 每股收益_元 WITH IIF(VARTYPE(&laStr[lnK + 1]) == "C", 0, &laStr[lnK + 1])
            CASE laStr[lnK] == "NetAssetsPerShare"
                REPLACE 每股净资产_元 WITH IIF(VARTYPE(&laStr[lnK + 1]) == "C", 0, &laStr[lnK + 1])
            CASE laStr[lnK] == "MGGJJ"
                REPLACE 每股公股金_元 WITH IIF(VARTYPE(&laStr[lnK + 1]) == "C", 0, &laStr[lnK + 1])
            CASE laStr[lnK] == "MGWFPLY"
                REPLACE 每股未分配利润_元 WITH IIF(VARTYPE(&laStr[lnK + 1]) == "C", 0, &laStr[lnK + 1])
            CASE laStr[lnK] == "JLYTBZZ"
                REPLACE 净利润同比增长_% WITH IIF(VARTYPE(&laStr[lnK + 1]) == "C", 0, &laStr[lnK + 1])
            CASE laStr[lnK] == "TotalEquity"
                REPLACE 总股本_亿 WITH &laStr[lnK + 1]/10^8
            CASE laStr[lnK] == "YAGGR"
                REPLACE 预案公告日 WITH &laStr[lnK + 1]
            CASE laStr[lnK] == "GQDJR"
                REPLACE 股权登记日 WITH &laStr[lnK + 1]
            CASE laStr[lnK] == "CQCXR"
                REPLACE 除权除息日 WITH &laStr[lnK + 1]
            CASE laStr[lnK] == "ProjectProgress"
                REPLACE 方案进度 WITH &laStr[lnK + 1]
            CASE laStr[lnK] == "NOTICEDATE"
                REPLACE 最新公告日期 WITH &laStr[lnK + 1]
        ENDCASE
    ENDFOR
ENDFOR
BROWSE 


这个网页的数据不规范

坚守VFP最后的阵地
2021-05-05 19:31
closeall
Rank: 1
等 级:新手上路
帖 子:42
专家分:0
注 册:2017-1-18
得分:0 
谢谢!就是这个!我知道你行的!!雪中送炭!
2021-05-05 20:52
closeall
Rank: 1
等 级:新手上路
帖 子:42
专家分:0
注 册:2017-1-18
得分:0 
回复 5楼 sdta
为什么我运行时只有一行记录啊?vfp7中运行的。
2021-05-05 21:00
closeall
Rank: 1
等 级:新手上路
帖 子:42
专家分:0
注 册:2017-1-18
得分:0 
2021-05-05 21:01
sdta
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:江苏省连云港市
等 级:版主
威 望:323
帖 子:9621
专家分:26174
注 册:2012-2-5
得分:0 
以下是引用closeall在2021-5-5 21:00:50的发言:

为什么我运行时只有一行记录啊?vfp7中运行的。

代码是不是被你修改了

坚守VFP最后的阵地
2021-05-05 21:24



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-505651-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.311881 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved