我知道關於PHP網頁刮板的問題已被問及時間和使用這個,我發現了SimpleHTMLDOM。在我的本地服務器上無縫工作之後,我將所有內容都上傳到了我的在線服務器上,以便找出某些問題無法解決。快速瀏覽常見問題解答後,我會轉到this。我目前正在使用免費託管服務,因此請編輯任何php.ini設置。所以使用FAQ的建議,我嘗試使用cURL,只是發現這也是由我的託管服務關閉。是否還有其他簡單的解決方案可以在不使用cURL或SimpleHTMLDOM的情況下刪除另一個網頁的內容?當cURL和allow_url_fopen被禁用時如何抓取網站
回答
如果cURL
和allow_url_fopen
沒有啓用,你可以嘗試獲取通過內容
fsockopen
- 打開Internet或Unix域套接字連接
換句話說,你所要做的HTTP請求手動。請參閱手冊中的示例以瞭解如何執行GET請求。然後可以進一步處理返回的內容。如果套接字已啓用,您還可以使用任何第三方lib來利用它們,例如Zend_Http_Client
。
在旁註中,查看Best Methods to Parse HTML以獲得SimpleHTMLDom的替代方案。
cURL是一種專業API。它不是通常製作的http庫,而是FTP,SFTP,SCP,HTTP PUT,SMTP,TELNET等通用數據傳輸庫。如果您只想使用HTTP,則有一個根據PEAR library for that。或者檢查您的PHP版本是否啓用了官方http extension。 刮刮試phpQuery或querypath。兩者都帶有內置http支持。
我認爲querypath使用DOM的加載工具和afaik,它們依賴於'allow_url_fopen'。另一方面,phpquery使用'Zend_Http_Client',這可能是一個選項。 PEAR圖書館也是一個很好的電話。這是'fsockopen'上的一個實現。 – Gordon 2010-10-07 11:01:39
file_get_contents()是在不安裝額外庫的情況下抓取頁面的最簡單方法。
下面是在allow_url_fopen
設置爲false
時抓取圖像的一種簡單方法,無需研究傳統工具。
在您的開發環境中創建一個網頁,加載您正在抓取的所有圖像。然後您可以使用瀏覽器保存圖像。 File -> "Save Page As"
。
如果您需要一次性解決方案從allow_url_fopen
設置爲0
的遠程服務器下載一堆圖像,這很方便。
這對我工作後file_get_contents
和curl
失敗。
- 1. 使用curl和xpath來抓取網站
- 2. 當allow_url_fopen = off時,PHP圖像抓取
- 3. PHP,需要幫助使用cURL allow_url_fopen被禁用
- 4. 當Facebook抓取網站時執行Javascript
- 5. 如何抓取網站?
- 6. 網站抓取和截圖
- 7. Scrapy - 抓取和刮網站
- 8. 當javascript被禁用時,如何獲取上一頁的網址?
- 9. 通過Googlebot抓取網站時禁用會話
- 10. 如何使用scrapy抓取網站?
- 11. 如何同時讀取和抓取網址和網站文件內容c#
- 12. Google何時重新抓取網站?
- 13. 當allow_url_fopen關閉時,用PHP中的cUrl替換文件()
- 14. 登錄後用cURL從網站抓取數據?
- 15. scrapy抓取網站
- 16. 抓取網站使用PHP
- 17. 抓取網站和動態網址
- 18. 成功提交後django網站的網站沒有被抓取
- 19. 安裝抓取,網站抓取庫
- 20. 網站抓取器每隔幾秒就抓取一次網站
- 21. 如何抓取SimpleHTMLDom返回的網站?
- 22. 如何抓取我自己的網站?
- 23. 如何抓取一個網站
- 24. 如何抓取網站證書?
- 25. 如何抓取分類的網站
- 26. 如何從網站上抓取數據
- 27. 如何從網站上抓取信息?
- 28. 如何抓取Hype Machine等網站?
- 29. 搜索引擎如何抓取網站?
- 30. 如何解析/抓取/抓取特定信息的網站?
+1不知道你可以使用fsockopen,即使allow_url_fopen是不允許的。 – NikiC 2010-10-20 18:18:18