开启辅助访问 切换到宽版

精易论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

用微信号发送消息登录论坛

新人指南 邀请好友注册 - 我关注人的新帖 教你赚取精币 - 每日签到


求职/招聘- 论坛接单- 开发者大厅

论坛版规 总版规 - 建议/投诉 - 应聘版主 - 精华帖总集 积分说明 - 禁言标准 - 有奖举报

查看: 8465|回复: 16
收起左侧

[技术专题] 如何使用Fiddler中的FiddlerScript实现自动化抓取抖音网页版视频

[复制链接]
结帖率:86% (30/35)
发表于 2021-6-29 09:20:11 | 显示全部楼层 |阅读模式   江西省吉安市
本帖最后由 行走江湖的小白 于 2021-6-29 09:21 编辑

目标网址:

https://www.douyin.com/


详细B站演示视频教程:https://www.bilibili.com/video/BV1jX4y1P7gt/

准备工具:

1.谷歌内核浏览器(这里选择360极速浏览器)

2.配置好的Fiddler一个

代码介绍:

首先可以改动的地方很多,我挑几个重要的改动地方

1.保存路径,记得要非中文,只能是路径

var path = "D:\\douyin\\"

2.自动刷新网页,可以屏蔽,或者修改刷新时间,比如10秒就填写10000,1000代表1秒,这里是5000也就是5秒

var _body = "<head><script>setInterval(function(){location.reload(true)},5000)</script>";

3.保存的内容,可以根据自己需要,比如我不想要作者,可以加两个//就是屏蔽,屏蔽之后就是绿色

saveHeaderBody(path,"作者名字:"+zuozhe)




代码配置方法

  • 首先找到Fiddler中的FiddlerScript

抖音1.png
  • 找到Go to 选择OnBeforeResponse

抖音2.png

  • 找到空白区域,放入代码
  • 代码片段1放入空白OnBeforeResponse的区域

抖音3.png
  • 代码片段2放入OnBeforeResponse的上面

抖音代码片段2.png

  • 最后一定要点击Save script,一定要点击Save script,一定要点击Save script

抖音4.png
  • 刷新抖音网址,切换到Fiddler中的log面板

抖音pc端.png
最后一定要点击Save script,一定要点击Save script,一定要点击Save script

代码片段1
  1. //不会安装或者定制联系QQ:2908436596
  2. //抖音
  3. if(oSession.fullUrl.Contains("https://www.douyin.com/")){
  4.             var body = oSession.GetResponseBodyAsString();
  5.             //reload中的true是强制刷新,fasle是缓存刷新 5000代表5秒,如果需要1秒就1000
  6.             var _body = "<head><script>setInterval(function(){location.reload(true)},5000)</script>";
  7.             oSession.utilReplaceInResponse("<head>",_body)
  8.             
  9.         }
  10.         if(oSession.fullUrl.Contains("/aweme/v1/web/channel/feed/")){
  11.             //保存路径,只能写非中文和目录
  12.             var path = "D:\\douyin\"
  13.             try{
  14.                 //对返回数据解码
  15.                 oSession.utilDecodeResponse();
  16.                 //获取返回内容
  17.                 var body = oSession.GetResponseBodyAsString();
  18.                 //将文本转换为json类型
  19.                 var responseJSON = Fiddler.WebFormats.JSON.JsonDecode(body);
  20.             
  21.                 FiddlerObject.log("=======================这一页的抖音视频信息=====================")
  22.                 //判断是否为JSON
  23.                 if((responseJSON.JSONObject=='System.Collections.ArrayList' || responseJSON.JSONObject=='System.Collections.Hashtable')&&body!='[]'&&body!='{}'){
  24.                     for(var list in responseJSON.JSONObject["aweme_list"]){
  25.                         //获取作者名字
  26.                         var zuozhe = list["author"]["nickname"]
  27.                         FiddlerObject.log("作者名字:"+zuozhe)
  28.                         //保存为文本
  29.                         saveHeaderBody(path,"作者名字:"+zuozhe)
  30.                         
  31.                         //获取主页链接
  32.                         var zhuye = "https://www.douyin.com/user/"+list["author"]["sec_uid"]
  33.                         FiddlerObject.log("作者主页链接:"+zhuye)
  34.                         saveHeaderBody(path,"作者主页链接:"+zhuye)
  35.                         
  36.                         //获取视频标题信息
  37.                         var title = list["desc"]
  38.                         FiddlerObject.log("视频标题:"+title)
  39.                         saveHeaderBody(path,"视频标题:"+title)
  40.                         
  41.                         
  42.                         //获取视频下载地址
  43.                         var videoUrl = list["video"]["play_addr"]["url_list"][1]
  44.                         FiddlerObject.log("视频下载地址:"+videoUrl)
  45.                         saveHeaderBody(path,"视频下载地址:"+videoUrl)
  46.                         
  47.                         
  48.                
  49.                     }
  50.                
  51.                 }
  52.                 FiddlerObject.log("=======================这一页的抖音视频信息=====================")
  53.             
  54.             }catch (e){
  55.             
  56.                 FiddlerObject.log("代码出现错误,错误原因:"+e)
  57.             
  58.             }
  59.         }
复制代码
代码片段2

  1. //保存抖音
  2.     static function saveHeaderBody(textpath,body){
  3.         //保存为文本
  4.         //FiddlerObject.log("正在保存文本到:"+textpath);
  5.         var fso;
  6.         var file;
  7.         try{
  8.             //判断是否有这个文本,没有就创建
  9.             if (!System.IO.Directory.Exists(textpath)){
  10.                 System.IO.Directory.CreateDirectory(textpath);
  11.             }
  12.             
  13.             fso = new ActiveXObject("Scripting.FileSystemObject");
  14.             //参数2为直接替换文本,8为追加
  15.             file = fso.OpenTextFile(textpath+"douyin.txt",8 ,true, true);
  16.             //写入文本
  17.             file.writeLine(body);
  18.             //关闭文件句柄
  19.             file.close();
  20.             return true;
  21.         }catch(e){
  22.             if(file!=null){
  23.                 file.close();   
  24.             }
  25.             FiddlerObject.log("保存文件出错,错误原因:"+e);
  26.             return false;
  27.         
  28.         }
  29.         //FiddlerObject.log("天天欧尼酱提示:保存文本成功!");         
  30.         
  31.     }
复制代码




评分

参与人数 1好评 +1 精币 +2 收起 理由
糖太粽 + 1 + 2 感谢分享,很给力!~

查看全部评分


结帖率:17% (1/6)

签到天数: 1 天

发表于 2022-5-1 10:53:44 | 显示全部楼层   广东省广州市
虽然不会,但是收藏了
回复 支持 反对

使用道具 举报

结帖率:33% (3/9)

签到天数: 7 天

发表于 2021-8-18 03:25:43 | 显示全部楼层   北京市北京市

好吧,果然大神我还是没实现为啥
回复 支持 反对

使用道具 举报

结帖率:86% (30/35)
 楼主| 发表于 2021-8-17 09:22:21 | 显示全部楼层   江西省吉安市
2313291647 发表于 2021-8-17 04:21
这不是吾爱破J论坛的吗

我发的
回复 支持 反对

使用道具 举报

结帖率:33% (3/9)

签到天数: 7 天

发表于 2021-8-17 04:21:31 | 显示全部楼层   北京市北京市
这不是吾爱破J论坛的吗
回复 支持 反对

使用道具 举报

结帖率:25% (1/4)
发表于 2021-7-19 18:30:29 | 显示全部楼层   四川省成都市
牛。。。。。
回复 支持 反对

使用道具 举报

结帖率:71% (10/14)
发表于 2021-7-10 19:24:14 高大上手机用户 | 显示全部楼层   广东省东莞市
厉害,支持。
回复 支持 反对

使用道具 举报

发表于 2021-7-9 10:39:56 | 显示全部楼层   安徽省合肥市
大佬给力啊
回复 支持 反对

使用道具 举报

发表于 2021-7-7 09:57:24 | 显示全部楼层   山东省临沂市
看起来很厉害,是我不会的方面。
回复 支持 反对

使用道具 举报

结帖率:100% (5/5)

签到天数: 11 天

发表于 2021-7-6 22:10:49 高大上手机用户 | 显示全部楼层   北京市北京市
感谢分享
回复 支持 反对

使用道具 举报

结帖率:48% (11/23)
发表于 2021-7-6 11:17:09 | 显示全部楼层   广东省茂名市
你好,能不能详细点呀,
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则 致发广告者

发布主题 收藏帖子 返回列表

sitemap| 易语言源码| 易语言教程| 易语言论坛| 易语言模块| 手机版| 广告投放| 精易论坛
拒绝任何人以任何形式在本论坛发表与中华人民共和国法律相抵触的言论,本站内容均为会员发表,并不代表精易立场!
论坛帖子内容仅用于技术交流学习和研究的目的,严禁用于非法目的,否则造成一切后果自负!如帖子内容侵害到你的权益,请联系我们!
防范网络诈骗,远离网络犯罪 违法和不良信息举报电话0663-3422125,QQ: 793400750,邮箱:wp@125.la
Powered by Discuz! X3.4 揭阳市揭东区精易科技有限公司 ( 粤ICP备12094385号-1) 粤公网安备 44522102000125 增值电信业务经营许可证 粤B2-20192173

快速回复 返回顶部 返回列表