Skip to content

Instantly share code, notes, and snippets.

@Spiker01
Created January 3, 2019 10:37
Show Gist options
  • Save Spiker01/0fbd77f4ffaae563e9fb1965f9d6f049 to your computer and use it in GitHub Desktop.
Save Spiker01/0fbd77f4ffaae563e9fb1965f9d6f049 to your computer and use it in GitHub Desktop.
// Программа на GoLang. Парсер Wiki-ссылок который я пишу сам.
package main
import (
"fmt"
//"github.com/PuerkitoBio/goquery"
//"os"
//"sync"
"io/ioutil"
//"log"
"net/http"
"strings"
)
//
var TextFindVar01 string = "<a href=\"/wiki/"
// Описание функции возвращающей значение первых символов до N.
func FirstN(s string, n int) string {
i := 0
for j := range s {
if i == n {
return s[:j]
}
i++
}
return s
}
// Начало основной функции программы
func main() {
fmt.Println("\n--------------------------") // Для удобного поиска в консоли и ручного "дебага".
fmt.Println("Переменная TextFindVar01:", TextFindVar01) //Вывод на экран переменной с текстом который ищем.
fmt.Println("\n--------------------------")
WebDoc, _ := http.Get("https://ru.wikipedia.org/wiki/%D0%95%D0%B4%D0%B8%D0%BD%D0%B8%D1%86%D0%B0") //Получаем статью из Википедии под названием "Единица" в переменную.
WebDocReadAllVar, _ := ioutil.ReadAll(WebDoc.Body)
fmt.Println("Вывод HTML(стринг string(WebDocReadAllVar)):\n", string(WebDocReadAllVar)) // Строковый тип.
fmt.Println("\n--------------------------")
fmt.Println("Вывод HTML(просто переменная WebDocReadAllVar):\n", WebDocReadAllVar)
//WebDoc.Body.Close()
StringWebVar := string(WebDocReadAllVar[:]) // Переводим байты в стоковый тип и присваиваем это знаение переменной.
fmt.Println("\n--------------------------") //
fmt.Println("Вывод HTML(просто StringWebVar):\n", StringWebVar) // Вывод переменной с типом String.
FerstFindVar := strings.Index(StringWebVar,TextFindVar01); // получаем порядковый номер символа стоящего, после которого начинается искомый текст.
// <a href="/wiki/
fmt.Println("\n--------------------------")
fmt.Println("\n--------------------------")
fmt.Println("\n--------------------------")
fmt.Println("Переменная FerstFindVar равна:",FerstFindVar) // Вывод на экран порядкового номера символа, после которого начинается текст <a href="/wiki/ .
fmt.Println("\n--------------------------")
fmt.Println("\n--------------------------")
fmt.Println("\n--------------------------")
fmt.Println("\n--------------------------")
SecondWebDocVar := string([]rune(StringWebVar)[FerstFindVar:]);
fmt.Println("Переменная SecondWebDocVar:",SecondWebDocVar)
fmt.Println("\n--------------------------")
fmt.Println("\n--------------------------")
fmt.Println("\n--------------------------")
FirstNVar:=FirstN("世界 Hello", 5) //Вывод первых N символов.
fmt.Println("Переменная FirstNVar равна:",FirstNVar); //Будет использовано в дальнейшем.
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment