R中的download.file()不起作用

时间:2017-09-19 00:56:44

标签: r pdf port

我正在尝试使用R.下载并保存pdf文件。

此文件在Chrome和Edge中完美显示:http://www.cpppc.org:8082/efmisweb/ppp/projManage/perview.do?&ftpFileName=20170317105445289.pdf&content=efmisweb&xsg=:8083/

以下R代码无误地运行:

download.file('http://www.cpppc.org:8082/efmisweb/ppp/projManage/perview.do?&ftpFileName=20170317105445289.pdf&content=efmisweb&xsg=:8083/', '20170317105445289.pdf', mode="wb")

R显示

trying URL 'http://www.cpppc.org:8082/efmisweb/ppp/projManage/perview.do?&ftpFileName=20170317105445289.pdf&content=efmisweb&xsg=:8083/'
Content type 'text/html; charset=UTF-8' length 2707 bytes
downloaded 2707 bytes

唯一的提示是文件大小比我预期的要小得多。

实际上,当我使用Adobe Acrobat打开它时,它会给我一个错误,说它不是受支持的文件类型,或文件已损坏。是什么导致错误?

我注意到answers to other questions说你应该加mode=wb,所以我已经这样做了。

1 个答案:

答案 0 :(得分:1)

通过链接,我有一个2707字节的文件。 通过此链接,文件为115千字节。

<dom-module id="queue-area-charts">
    <template>
        <iron-ajax auto id="AjaxPost" url="http://localhost:9090/ybTest2"   method="POST" content-type="application/json" handle-as="json" on-response="_onResponse" last-response="{{hresponse}}"  debounce-duration="300"></iron-ajax>
        <template is="dom-repeat" items="{{hresponse}}" as="hresponse">
            {{hresponse.cpu}}
            {{hresponse.AGENT_TIME}}
            <p></p>
        </template>

        <vaadin-area-chart id="chart">
            <x-axis type="datetime"></x-axis>
            <y-axis allow-decimals='false' min='0' max="100">
            </y-axis>
                                    <!--"2017-07-27 18:04:46"   15  ====    1501146197000-->
            <tooltip formatter="function () {
                    return '<b>'+Highcharts.dateFormat('%Y-%m-%d %H:%M:%S', this.x) + '<br/>';}">
            </tooltip>
            <data-series name="Queue">
                <data>
                    <template is="dom-repeat" items="{{hresponse}}" as="hresponse">
                        <point>
                            <x>[[hresponse.AGENT_TIME]]</x>
                            <y>[[hresponse.cpu]]</y>
                        </point>
                    </template>
                </data>
            </data-series>
        </vaadin-area-chart>
    </template>
    <script>
        Polymer({
            is: "queue-area-charts",
            properties: {
                hresponse:{
                    type: Object,
                    notify:true,
                },
            },
            _onResponse: function(e, request) {
                this.attached();
            },
            attached: function () {
                this.async(function () {
                    var starttime = "2017-07-27 18:04:46",
                        endtime = "2017-07-28 00:00:00";
                    var oData = {"starttime": starttime, "endtime": endtime};
                    this.$.AjaxPost.body = JSON.stringify(oData);
                    this.$.AjaxPost.generateRequest();
                }, 3000);
            }
        });
    </script>
</dom-module>