濮阳杆衣贸易有限公司

主頁(yè) > 知識(shí)庫(kù) > golang使用正則表達(dá)式解析網(wǎng)頁(yè)

golang使用正則表達(dá)式解析網(wǎng)頁(yè)

熱門(mén)標(biāo)簽:谷歌便利店地圖標(biāo)注 ?兓? 最短的地圖標(biāo)注 浙江人工智能外呼管理系統(tǒng) 百度地圖標(biāo)注搜索關(guān)鍵詞 電梯外呼訪客系統(tǒng) 成都呼叫中心外呼系統(tǒng)平臺(tái) 電銷機(jī)器人可以補(bǔ)救房產(chǎn)中介嗎 騰訊外呼系統(tǒng)價(jià)格

廢話少說(shuō),直接奉上代碼:

復(fù)制代碼 代碼如下:

package main
import (
"fmt"
"time"
"io/ioutil"
"net/http"
"regexp"
"strings"
)
func main() {
    ip_pool := []string{
                "172.16.1.128",
                "172.16.1.129",
                "172.16.1.131",
                "172.16.1.132",
                "172.16.1.133",
                "172.16.1.134",
                "172.16.1.135",
                "172.16.1.136",
                "172.16.1.137",
                "172.16.1.138",
                "172.16.1.190",
            }
    for {
        for i:=0;ilen(ip_pool);i++  {
            url := "http://"+ip_pool[i]+":10022"
            //fmt.Println("-----------------",ip_pool[i],"---------")
             get_url(url)
            time.Sleep(1*time.Millisecond)
        }
//time.Sleep(time.Second * 60)
    }
}
func get_url(url string){
    fmt.Println("----------",url,"----------------")
    resp, err := http.Get(url)
    if err != nil {
        fmt.Println("http get error.")
    }
    defer resp.Body.Close()
    body, err := ioutil.ReadAll(resp.Body)
    if err != nil {
        fmt.Println("http read error")
    }
src := string(body)
//將HTML標(biāo)簽全轉(zhuǎn)換成小寫(xiě)
re, _ := regexp.Compile("\\[\\S\\s]+?\\>")
src = re.ReplaceAllStringFunc(src, strings.ToLower)
//  提取table 標(biāo)簽
re,_ = regexp.Compile("\\!doc[\\S\\s]+?\\table")
src = re.ReplaceAllString(src, "table")
re,_ = regexp.Compile("/table\\>[\\S\\s]+?\\/html\\>")
src = re.ReplaceAllString(src, "/table>")
// 干掉行首的空格
 re,_ = regexp.Compile("(\\tr>)([\\S\\s\\>\"\\d]+?)(\\/tr>)")
 //src = re.ReplaceAllString(src, "$2")
 src = re.ReplaceAllString(src, "$2]")
 // 去掉>標(biāo)簽
re,_ = regexp.Compile("[\\S\\s]+?>")
src = re.ReplaceAllString(src, "")
re,_ = regexp.Compile("\n")
src = re.ReplaceAllString(src, "")
re,_ = regexp.Compile("[ ]+")
src = re.ReplaceAllString(src, " ")
re,_ = regexp.Compile("]")
 src = re.ReplaceAllString(src, "\n")
// 變成 json                1           2                3           4
re,_ = regexp.Compile("(\\w*)(\\w{2}:\\w{2}:\\w{2}:\\w{2}:\\w{2}:\\w{2})([A-Za-z ]*)(\\d{4}-\\d{2}-\\d{2} \\d{2}:\\d{2}:\\d{2} )([V\\d\\.]* )(\\d{4}-\\d{2}-\\d{2}( \\d{2}:\\d{2}(:\\d{2})?)?)")
/* (((\\d{4}-\\d{2}-\\d{2})+ (\\d{2}:\\d{2}:\\d{2})*?)")
*/
src = re.ReplaceAllString(src, "$1,$2,$3,$4,$5,$6,")
//re,_ = regexp.Compile("([\\S\\s]*?\">)([\\S\\s]+?)(/t")
//src = re.ReplaceAllString(src, "$2,")
// re,_ = regexp.Compile("[\\S\\s]+?>")
// src = re.ReplaceAllString(src, "")
//reg := regexp.MustCompile("([A-Za-z]+?)(\n[\\s]+)([\\d]+)")
// src =  reg.ReplaceAllString(src, "$1:$3")
//去除連續(xù)的換行符
//re, _ = regexp.Compile("\\s{2,}")
//src = re.ReplaceAllString(src, "\n")
//re = regexp.MustCompile("\n\\d+")
//fmt.Println(re.ReplaceAllLiteralString("hello\n2\nwork", '\d'))
src = strings.Replace(src,"虛擬機(jī)名稱 虛擬機(jī)MAC 虛擬機(jī)狀態(tài) 心跳時(shí)間 引擎版本 病毒庫(kù)日期 掃描樣本數(shù)" , "vm_name,vm_mac,vm_state,vm_heart,vm_eg,vm_av_db,vm_count",-1)
fmt.Println(src)
//reg, err := regexp.Compile("[[0-9A-Za-z]{2}:?]{6}")
//fmt.Printf("%q,%v\n", reg.FindString("00:16:3e:4a:29:35"), err)
// "Hello",
// text := "Hello\n123\nGo\n123"
// reg = regexp.MustCompile("([A-Za-z]+?)(\n)([\\d]+)")
// fmt.Printf("%q\n", reg.ReplaceAllString(text, "$3:$1"))
//fmt.Println(strings.TrimSpace(src))
//去除STYLE
//re, _ = regexp.Compile("\\style[\\S\\s]+?\\/style\\>")
//src = re.ReplaceAllString(src, "")
//去除SCRIPT
//re, _ = regexp.Compile("\\script[\\S\\s]+?\\/script\\>")
//src = re.ReplaceAllString(src, "")
//去除所有尖括號(hào)內(nèi)的HTML代碼,并換成換行符
//re, _ = regexp.Compile("\\[\\S\\s]+?\\>")
//src = re.ReplaceAllString(src, "\n")
//去除連續(xù)的換行符
//re, _ = regexp.Compile("\\s{2,}")
//src = re.ReplaceAllString(src, "\n")
//fmt.Println(strings.TrimSpace(src))
}

以上就是本文給大家分享的代碼了,希望大家能夠喜歡。

您可能感興趣的文章:
  • Golang 正則匹配效率詳解
  • 淺析golang 正則表達(dá)式
  • golang正則之命名分組方式

標(biāo)簽:宜昌 盤(pán)錦 邢臺(tái) 眉山 雅安 七臺(tái)河 上海 紹興

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《golang使用正則表達(dá)式解析網(wǎng)頁(yè)》,本文關(guān)鍵詞  golang,使用,正則,表達(dá)式,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問(wèn)題,煩請(qǐng)?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無(wú)關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《golang使用正則表達(dá)式解析網(wǎng)頁(yè)》相關(guān)的同類信息!
  • 本頁(yè)收集關(guān)于golang使用正則表達(dá)式解析網(wǎng)頁(yè)的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章
    麻江县| 岐山县| 肥西县| 江陵县| 平泉县| 陇西县| 宁武县| 晋城| 安龙县| 安阳市| 玉环县| 汉中市| 霍邱县| 略阳县| 乌兰察布市| 贵德县| 平邑县| 张北县| 潮州市| 金华市| 遂平县| 贵阳市| 龙门县| 苏尼特右旗| 平远县| 比如县| 秀山| 鹤庆县| 郑州市| 高州市| 彭州市| 开化县| 和林格尔县| 尚志市| 开远市| 津市市| 祁门县| 江北区| 石嘴山市| 股票| 阿克苏市|