golang爬蟲colly?發(fā)送post請求
繼續(xù)還是工作中使用colly,不管是官網(wǎng),還是網(wǎng)上的一些文章(其實90%就是把官網(wǎng)的案例抄過去),都是一樣的格式,沒有講到post,測試了幾次,記錄一下post的使用
?? ?c := colly.NewCollector()
?? ?type data struct {
?? ??? ?Phone string `json:"phone" binding:"required"`
?? ?}
?? ?d:=&data{
?? ??? ?Phone:"18190897361",
?? ?}
?? ?da,err:=json.Marshal(d)
?? ?if err!=nil{
?? ??? ?fmt.Println(err)
?? ?}
?? ?c.OnResponse(func(response *colly.Response) {
?? ??? ?fmt.Println(string(response.Body))
?? ?})
?? ?c.OnRequest(func(r *colly.Request) {
?? ??? ?fmt.Println(r)
?? ??? ?fmt.Println(r.Method)
?? ??? ?r.Headers.Set("Content-Type", "application/json;charset=UTF-8")
?? ??? ?r.Headers.Set("User-Agent","Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/81.0.4044.113 Safari/537.36")
?? ?})
?? ?c.OnError(func(response *colly.Response, e error) {
?? ??? ?fmt.Println(e)
?? ?})
?? ?c.PostRaw("http://www.××××.com:×××/baseDevice/getUserInfo",da)
?? ?//c.Visit("http://www.××××.com:×××/baseDevice/getUserInfo")其實也沒多少不一樣,首先準備你要發(fā)送的json格式的數(shù)據(jù)(現(xiàn)在90%都是json格式請求了),
type data struct {
Phone string `json:"phone" binding:"required"`
}
d:=&data{
Phone:"18190897361",
}
da,err:=json.Marshal(d)
這里只發(fā)送一個電話號碼,第二部就是最后的發(fā)送了
c.PostRaw("http://www.××××.com:×××/baseDevice/getUserInfo",da)
1:這句話一定要寫到最后
c.Visit(“http://www.××××.com:×××/baseDevice/getUserInfo”)
Visit方法,點進去源碼可以看到默認走的是get模式,我們這里發(fā)送post,就不需要寫了
就這么簡單—結(jié)束
到此這篇關(guān)于golang爬蟲colly 發(fā)送post請求的文章就介紹到這了,更多相關(guān)golang colly 發(fā)送post請求內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

