Advertisement
Guest User

thread finder m2ch.ml/kpop

a guest
Jun 3rd, 2023
59
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Go 1.36 KB | Source Code | 0 0
  1. package main
  2.  
  3. import (
  4.     "fmt"
  5.     "io"
  6.     "net/http"
  7.     "strings"
  8. )
  9.  
  10. func main() {
  11.     client := http.Client{}
  12.     //Здесь задаем диапозон тредов, для перебора
  13.     for i := 1; i <= 1000000; i++ {
  14.         // Иногда полезно знать какой тред сейчас обрабатывается
  15.         // if i%10000 == 0 {
  16.         //  fmt.Println(i)
  17.         // }
  18.  
  19.         //Формируем ссылку
  20.         url := fmt.Sprintf("https://m2ch.ml/kpop/res/%d.html", i)
  21.  
  22.         //Делаем запрос
  23.         resp, err := client.Get(url)
  24.         if err != nil {
  25.             continue
  26.         }
  27.         defer resp.Body.Close()
  28.        
  29.         //Получаем тело (страничку) запроса
  30.         s, err := io.ReadAll(resp.Body)
  31.         if err != nil {
  32.             continue
  33.         }
  34.  
  35.         //Ряд проверок, что мы нашли тред, а не ответ, что треда не существует или какая-то ошибка
  36.         if !strings.Contains(string(s), "<p>Этот тред не существует.</p>") &&
  37.             !strings.Contains(string(s), "Ай, ошибка. Перезагрузите страницу.") &&
  38.             !strings.Contains(string(s),
  39.                 "<p>Двач.hk не отвечает, а у нас нет копии этого треда.") {
  40.             //Если всё хорошо, то выводим ссылку в поток вывода
  41.             fmt.Println(url)           
  42.         }
  43.     }
  44. }
  45.  
Tags: golang
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement