如何使用fasthttp庫的爬蟲程式
如何使用fasthttp庫的爬蟲程式,該爬蟲使用Go語言爬取的影片。
```go
package main
import(
"fmt"
"io/ioutil"
"log"
"net/http"
"net/url"
"os"
"strings"
"github.com/valyala/fasthttp"
)
func main(){
client:=fasthttp.NewClient()
if err!=nil{
log.Fatal(err)
}
defer resp.Body.Close()
if resp.StatusCode==200{
body,err:=ioutil.ReadAll(resp.Body)
if err!=nil{
log.Fatal(err)
}
fmt.Println(string(body))
}else{
fmt.Println("Failed to get the video,status code:",resp.StatusCode)
}
//提取影片連結
links:=extractLinks(strings.NewReader(string(body)))
for _,link:=range links{
fmt.Println(link)
}
//下載影片
for _,link:=range links{
resp,err:=client.Get(link)
if err!=nil{
log.Fatal(err)
}
defer resp.Body.Close()
if resp.StatusCode==200{
body,err:=ioutil.ReadAll(resp.Body)
if err!=nil{
log.Fatal(err)
}
fmt.Println(string(body))
}else{
fmt.Println("Failed to download the video,status code:",resp.StatusCode)
}
}
}
func extractLinks(r io.Reader)[]string{
var links[]string
s:=bufio.NewScanner(r)
for s.Scan(){
if strings.Contains(s.Text(),"src=\""){
//提取影片連結
links=append(links,s.Text()[6:strings.Index(s.Text(),"\">")])
}
}
return links
}
```
這個程式首先使用fasthttp庫的Get方法獲取的頁面內容。如果獲取成功,程式會列印出頁面內容。
然後,程式會使用extractLinks函式從頁面內容中提取出所有的影片連結。這些連結會被列印出來。
最後,程式會使用上述提取出的連結下載影片。如果下載成功,程式會列印出下載的內容。如果下載失敗,程式會列印出失敗的原因。注意,這個程式沒有處理可能出現的錯誤,因此在實際使用時需要新增適當的錯誤處理程式碼。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/70032566/viewspace-2996723/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 使用Python和requests庫的簡單爬蟲程式Python爬蟲
- 編寫一個使用wreq庫的爬蟲程式爬蟲
- Python爬蟲神器requests庫的使用Python爬蟲
- Python爬蟲之Selenium庫的基本使用Python爬蟲
- 使用JavaScript編寫的爬蟲程式JavaScript爬蟲
- 爬蟲:多程式爬蟲爬蟲
- 如何爬取視訊的爬蟲程式碼原始碼爬蟲原始碼
- 爬蟲如何使用ip代理池爬蟲
- 【0基礎學爬蟲】爬蟲基礎之網路請求庫的使用爬蟲
- TypeScript 和 jsdom 庫建立爬蟲程式示例TypeScriptJS爬蟲
- Python使用多程式提高網路爬蟲的爬取速度Python爬蟲
- Python爬蟲之路-chrome在爬蟲中的使用Python爬蟲Chrome
- Python爬蟲之路-selenium在爬蟲中的使用Python爬蟲
- 爬蟲-selenium的使用爬蟲
- Python爬蟲之selenium庫使用詳解Python爬蟲
- 使用 Typhoeus 和 Ruby 編寫的爬蟲程式爬蟲
- 如何對爬蟲程式進行配置爬蟲
- bench fasthttp 和 庫自帶的net.http效能,fasthttp完敗?ASTHTTP
- 爬蟲的小技巧之–如何尋找爬蟲入口爬蟲
- 爬蟲基本原理及urllib庫的基本使用爬蟲
- 簡單的爬蟲程式爬蟲
- 爬蟲之requests庫爬蟲
- Swift爬蟲程式Swift爬蟲
- 爬蟲之xpath的使用爬蟲
- 爬蟲框架-scrapy的使用爬蟲框架
- Scrapy爬蟲框架的使用爬蟲框架
- 如何編寫一個Perl爬蟲程式爬蟲
- 爬蟲錯誤程式碼如何解決?爬蟲
- 使用java 爬蟲Java爬蟲
- 《Python3網路爬蟲開發實戰程式碼》基本庫使用Python爬蟲
- Python爬蟲--- 1.2 BS4庫的安裝與使用Python爬蟲
- 【Python學習】爬蟲爬蟲爬蟲爬蟲~Python爬蟲
- 你有自己寫過爬蟲的程式嗎?說說你對爬蟲和反爬蟲的理解?爬蟲
- 不用寫程式碼的爬蟲爬蟲
- 使用了lua-resty-http庫進行 爬蟲RESTHTTP爬蟲
- Python爬蟲進階之urllib庫使用方法Python爬蟲
- Python爬蟲之BeautifulSoup庫Python爬蟲
- python爬蟲如何爬知乎的話題?Python爬蟲