2017-02-28 213 views
-10

我想從網站「http://nccpl.com.pk/market-information/fipi-lipi/fipi-sector-wise」下載文件,但有提取按鈕來下載excel文件。我如何使用php每天自動下載它。使用php下載文件

+0

爲什麼會有mysqli標籤?如果沒有授予您許可,則無法訪問外部網站的文件。然而,如果它允許你使用cURL。 –

+0

有一個懸而未決的編輯http://stackoverflow.com/review/suggested-edits/15368520想要刪除該mysqli標籤 –

+0

@ Fred-ii-我猜測OP不僅希望我們編寫php代碼來獲取文件,但也添加一些mysqli魔法將它添加到他的數據庫:-) – jeroen

回答

1

數據導出鏈接正在從瀏覽器的JavaScript表中以JavaScript的方式生成CSV。出於這個原因,您將無法使用PHP下載它,因爲該文件實際上並不存在。

但是,通過下載頁面的html並解析它,您可以通過表格生成除PHP之外的文件。但是,我不知道PHP中可用於此目的的工具。

-2
readfile($file) 

是你需要我的朋友。 這是php.net

<?php 
$fichero = 'mono.gif'; 

if (file_exists($fichero)) { 
    header('Content-Description: File Transfer'); 
    header('Content-Type: application/octet-stream'); 
    header('Content-Disposition: attachment; filename="'.basename($fichero).'"'); 
    header('Expires: 0'); 
    header('Cache-Control: must-revalidate'); 
    header('Pragma: public'); 
    header('Content-Length: ' . filesize($fichero)); 
    readfile($fichero); 
    exit; 
} 
?> 
+1

這個答案是爲了讓一個網站*提供*下載*它已經託管的*,這根本不是問題所在,即網頁抓取動態生成的文件。 –

-1

相信該文件被自動更新,你可以只使用

header('Location: /path-to-file/filename');

<?php header('Location: '/docs/pdf/mypdf.pdf'); ?>

只寫它變成一個片段。 PHP文件,並讓用戶在他分享時.php文件舔下載buttton。確保文件有權下載。

+0

如果涉及用戶,如何按照問題中指定的方式「自動」下載? – ADyson

+0

你可以做的是創建一個像這樣的按鈕Download或將其添加到一個按鈕,使用php – Kuldeep

+0

自動下載文件是的,但這仍然是用戶必須通過單擊按鈕調用的過程。 OP想要「每天自動下載」,這實際上意味着沒有用戶干預。讓用戶每天都這樣做是不可靠的,距「自動」還有很長的路要走。它需要一個由定時器(例如cron或Windows Scheduled Tasks)觸發的自動化腳本,而不是GUI。只是製作一個將用戶重定向到另一個鏈接的按鈕不是自動化。 – ADyson