先做下代码记录,具体细节有时间再说。

package mainimport ("bufio""encoding/json""fmt""io/ioutil""log""net/http""net/url""os""strings""time"
)type Instargam struct {Data struct {User struct {EdgeOwnerToTimelineMedia struct {Edges []struct {Node struct {DisplayURL            string `json:"display_url"`VideoURL              string `json:"video_url"`EdgeSidecarToChildren struct {Edges []struct {Node struct {DisplayURL string `json:"display_url"`VideoURL   string `json:"video_url"`} `json:"node"`} `json:"edges"`} `json:"edge_sidecar_to_children"`} `json:"node"`} `json:"edges"`} `json:"edge_owner_to_timeline_media"`} `json:"user"`} `json:"data"`
}func GetHtml(Insurl string) (html string) {// 解析代理地址proxy, err := url.Parse("http://127.0.0.1:1087")//设置网络传输netTransport := &http.Transport{Proxy:                 http.ProxyURL(proxy),MaxIdleConnsPerHost:   10,ResponseHeaderTimeout: time.Second * time.Duration(5),}httpClient := &http.Client{Timeout:   time.Second * 10,Transport: netTransport,}request, err := http.NewRequest("GET", Insurl, nil)if err != nil {log.Println(err)}request.Header.Add("User-Agent", "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/78.0.3904.97 Safari/537.36") //模拟浏览器User-Agentres, err := httpClient.Do(request)if err != nil {log.Println(err)return}defer res.Body.Close()//判断是否成功访问,如果成功访问StatusCode应该为200if res.StatusCode != http.StatusOK {log.Println(err)return}content, _ := ioutil.ReadAll(res.Body)return string(content)
}func GetDownloadUrl(txt string, jsonurl string) {respHtml := GetHtml(jsonurl)var ins Instargamjson.Unmarshal([]byte(respHtml), &ins)fmt.Println()for _, v := range ins.Data.User.EdgeOwnerToTimelineMedia.Edges {var content stringif v.Node.DisplayURL != "" {fmt.Println(v.Node.DisplayURL)content = v.Node.DisplayURL + "\n"}if v.Node.VideoURL != "" {fmt.Println(v.Node.VideoURL)content += v.Node.VideoURL + "\n"}for _, v1 := range v.Node.EdgeSidecarToChildren.Edges {if v1.Node.VideoURL != "" {if v1.Node.DisplayURL != "" {fmt.Println(v1.Node.DisplayURL)content += v1.Node.DisplayURL + "\n"}if v1.Node.VideoURL != "" {fmt.Println(v1.Node.VideoURL)content += v1.Node.VideoURL + "\n"}}}WirteText(txt, content)}
}func WirteText(savefile string, txt string) {f, err := os.OpenFile(savefile, os.O_RDWR|os.O_CREATE|os.O_APPEND, 0777)if err != nil {fmt.Println("os Create error: ", err)return}defer f.Close()bw := bufio.NewWriter(f)bw.WriteString(txt)bw.Flush()
}func main() {var url stringfor ; ; {fmt.Println("输入地址:")fmt.Scanln(&url)url = strings.TrimSpace(url)GetDownloadUrl("save.txt", url)}}

使用go语言提取ins视频地址和图片地址相关推荐

  1. OpenCV 视频地址和图片地址注意事项

    OpenCV 视频地址和图片地址注意事项 图片地址 视频地址 如何快速打开该目录 地址中的'\'和'/'区别 图片地址 这四行代码都表示5图片52.jpg的路径 Mat srcImage = imre ...

  2. java平台利用jsoup开发包,抓取优酷视频播放地址与图片地址等信息。

    /********************************************************************************************  * aut ...

  3. 苹果cms如何批量更换图片地址和播放地址

    因和谐原因,一些资源站域名备案被取消导致用户网站部分视频不可观看或是没有图片显示的现象发生.这样就需要我们及时批量更换播放地址或是图片地址. 替换图片地址 这个的意思,就是将youku批量替换为qiy ...

  4. 拼接后端接口返回的图片地址

    拼接后端接口返回的图片地址 使用 服务器+返回的图片地址 方法 服务器 使用axios.js export default ({ app: { $axios } }) => {$axios.de ...

  5. c语言基础教程视频地址

    地址: https://blog.csdn.net/zhaoxz1985/article/details/72473045 上面的地址中的内容是c语言基础的视频连接,内容中的连接都已经不能看了,不过按 ...

  6. instagram获取图片地址和视频地址

    instagram 获取图片地址和视频地址 先保持 以后在详细说明 package mainimport ("bufio""encoding/json"&quo ...

  7. python一帧一帧读取视频_用Python从视频中提取每一帧的图片

    大家应该都有这样的情况:在看到某些视频的画面时感觉美如画,想截取下来却又烦于截图的繁琐,现在我就教大家使用Python提取视频中每一帧的画面,让大家不错过每一个精彩的瞬间! •语言:Python •所 ...

  8. c# 保存html中的图片,c# HTML中提取图片地址

    public class HtmlHelper { /// /// HTML中提取图片地址 /// public static List PickupImgUrl(string html) { Reg ...

  9. 基于Java语言构建区块链(五)—— 地址(钱包)

    基于Java语言构建区块链(五)-- 地址(钱包) 2018年03月25日 18:02:06 wangwei_hz 阅读数:1292更多 个人分类: 区块链bitcoin比特币 文章的主要思想和内容均 ...

最新文章

  1. WPF学习笔记——设置ListBox选中项的背景颜色
  2. Silverlight杂记-控件相关
  3. 第一个python命令
  4. Visual C++——LoadBitmap加载位图的操作过程
  5. ExecutorService-10个要诀和技巧
  6. 【传智播客】Libevent学习笔记(三):事件循环
  7. Nginx基本数据结构之ngx_pool_t
  8. WCF的追踪分析工具——SvcPerf
  9. [转]JAVA自动装箱和拆箱
  10. MODIS数据下载流程之地理空间数据云
  11. 抖音热门技术998 修改视频md5
  12. php 路由修改密码,TPLINK路由器如何修改管理密码和无线密码)
  13. 大白菜超级U盘启动盘制作工具极速装机版
  14. OS X: Messages Agent wants to use the login keychain
  15. CTF 实验吧 天网管理系统
  16. 跳出横向的、孤立的牵绊,真正站在新的角度来看待Web3.0
  17. Spring之IOC~控制反转
  18. NYOJ_1273_宣传墙
  19. DataGridView 控件中自动生成列
  20. 关于5G手机,你想知道的都在这里了-千氪

热门文章

  1. 电脑内存占用过高怎么办 电脑内存占用过高解决方法
  2. 【趣文】我是一个线程
  3. 三菱FX3U与欧姆龙E5CZ温控器485通讯案例
  4. C++ day22 继承(二)基类指针数组通过虚方法实现智能的多态
  5. 用Vue实现小Q聊天机器人(二)
  6. 客制化键盘编程_客制化键盘QMK固件入门-编译环境搭建
  7. 分布式事务(6)-分布式事务处理技术之RocketMQ
  8. 电感器的正确测量电感同BuH的关系
  9. Codeforces Round #807 (Div. 2)(A-D)
  10. X86 android r7 z3735,安卓工业平板电脑android系统下各大主流CPU性能大对比分析