文章目錄
- 一、curl是什么?
- 二、爬蟲在線小工具(牛逼puls)
- 三、實戰操作
一、curl是什么?
基本概念:curl 支持多種協議,如 HTTP、HTTPS、FTP、SFTP 等,可用于從服務器獲取數據或向服務器發送數據,在網絡請求和數據傳輸方面功能強大,在 Linux、Unix、Windows 等多種操作系統上均可使用。
常見用途:
-
數據獲取:用戶可使用 curl 發送 HTTP 請求獲取網頁內容、API 數據等。如在命令行輸入
curl https://www.example.com
,就能獲取該網站的 HTML 代碼。
-
數據提交:能用于向服務器提交數據,比如通過 POST 請求提交表單數據到服務器。示例命令
curl -X POST -d "name=John&age=30" https://api.example.com/users
,就可將用戶信息提交到指定的 API 接口。 -
文件傳輸:借助 FTP 或 SFTP 協議,curl 可以實現文件的上傳和下載。例如
curl -T localfile.txt ftp://user:password@ftp.example.com/remote_file.txt
可將本地文件上傳到 FTP 服務器。
特點優勢:
- 命令行操作便捷:通過簡單的命令和參數組合,就能完成復雜的網絡請求操作,方便快捷,適合腳本編寫和自動化任務。
- 支持多種選項:能設置請求頭、認證信息、超時時間等各種選項,滿足不同的網絡請求需求。如-H參數可用于設置自定義請求頭,-u參數用于設置用戶名和密碼進行認證。
- 開源且廣泛支持:curl 是開源軟件,擁有龐大的社區支持,不斷更新和完善,兼容性和穩定性良好。
二、爬蟲在線小工具(牛逼puls)
在線curl命令轉代碼工具地址:https://curlconverter.com/
支持多種語言,這里我們選擇Python:
為什么我說明它牛逼puls?
比如:我們要爬一個需要登錄的網站,需要設置headers參數
,如:user-agent、cookies等等,設置post請求參數
,每次都需要去瀏覽器挨個復制是不是很麻煩?
有了它只需要一次復制粘貼就可以自動生成對應的等等各種參數,并發送請求,極大的減少初始代碼的構建!!!
三、實戰操作
1、這里我們找了一個測試網站(可以自行找一個),需要登錄注冊:https://www.qimai.cn/rank/index/brand/all/device/iphone/country/cn/genre/36
2、點擊網絡 》 點擊刷新 》找到數據接口 》 右鍵點擊復制 》 選擇:cURL(bash)格式復制
3、 將剛才復制的內容放進在線curl命令轉代碼工具的輸入框中,可以看到幫我們自動生成了cookies和headers:https://curlconverter.com/
4、拷貝代碼到pycharm,在此基礎上加上打印和解析即可,我這個是數據接口,所以直接轉換為json格式即可:
5、輸出打印,成功返回數據,耗時1分鐘完成爬蟲代碼: