• colly 随机UA标识 下载图片


    colly  随机UA标识 下载图片

    package main
    
    import (
    	"io/ioutil"
    	"strings"
    
    	"github.com/gocolly/colly"
    	"github.com/gocolly/colly/extensions"
    )
    
    func dlImg(uri string) {
    	logHelper.Info(uri)
    	// https://images.hk/upload/goods/20211127152597926.jpg
    	c := colly.NewCollector(
    	// colly.UserAgent("Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/70.0.3538.25 Safari/537.36 Core/1.70.3880.400 QQBrowser/10.8.4554.400"),
    	// colly.AllowedDomains("foo.com", "bar.com"),
    	)
    	extensions.RandomUserAgent(c)
    
    	c.OnResponse(func(r *colly.Response) {
    		logHelper.Info(r.Request.Headers)
    		logHelper.Info(r.StatusCode)
    		// logHelper.Info(r.Body)
    		bs := r.Body
    		fn := func() string {
    			l := strings.Split(uri, ".hk/")
    
    			p := "../shop/" + l[1]
    			logHelper.Info(l[1], p)
    			return p
    		}()
    		err := ioutil.WriteFile(fn, bs, 0777)
    		if err != nil {
    			logHelper.Error(err)
    		}
    	})
    	if err := c.Visit(uri); err != nil {
    		logHelper.Error(err)
    	}
    
    	logHelper.Info("end")
    }
    
    func dlImgFromFile(f string) {
    	s := rF(f)
    	l := strings.Split(s, "\r\n")
    	for _, uri := range l {
    		// logHelper.Info(uri)
    		dlImg(uri)
    	}
    
    }
    

      

  • 相关阅读:
    MySQL优化
    MySQL 的 SQL 操作
    笔记本电脑同时使用两个网络
    top
    logrotate
    正则表达式学习总结
    HttpClient parameter 和body 传输同时进行
    Node.js背景
    前后端分离的理解
    shiro 的subject 以及Context 对象的具体的含义。
  • 原文地址:https://www.cnblogs.com/rsapaper/p/15836106.html
Copyright © 2020-2023  润新知