本文仅供学习参考 切勿用于商业

本次爬取使用fiddler+模拟器(下载抖音APP)+pycharm

1. 下载最新版本的fiddler(自行百度下载),以及相关配置

1.1.依次点击,菜单栏-Tools-Options-HTTPS,如图1红框打钩,HTTPS旁边Connections配置,如图2红框打钩

1.2.再次点击HTTPS栏,点击Actions选择第二个…to Desktop这个选项,发送证书到桌面(方便找到,模拟器中需要安装)

2.下载安装模拟器,我用的是夜神模拟器

官网:https://www.yeshen.com/

自行修改页面或内存等。。。。

2.1.回到电脑桌面, 找到刚才保存的证书,拖动到模拟器,看一下下图红框中的路径。

2.2. 返回模拟器桌面,打开设置,下拉找到进入-安全-选择从SD卡安装-如下图所示,找到证书进行安装,提示的随便输入。

2.3.返回到模拟器设置, 找到WiFi,进去,左键长按,修改网络,如图修改,本机ip查询,cmd输入ipconfig,IPv4后边的就是本机IP

3. 模拟器应用市场中下载抖音App,到此配置已完成,重启模拟器,之后测试fiddler是否能抓到请求包。

4.测试能抓到请求。然后分析请求。

5,本文爬取的是 '抖音昵称', '抖音ID', '个人简介' 因此查看到 抓包返回的是图2的数据

6.得到的数据不可能一个一个的复制保存到本地,因此可使用fiddler自行编写脚本保存数据, 走起,自己去添加一个,如图3,添加的脚本 自动保存相应数据到本地json文件

7.以下是fiddler脚本,根据需要自行修改

if (oSession.uriContains("https://aweme-eagle-hl.snssdk.com/aweme/v1/user/")){
        //上边的网址是你需要保存数据的网址开头的部分,网站修改的话需要及时修改url
var strBody=oSession.GetResponseBodyAsString();
var sps = oSession.PathAndQuery.slice(-64,-54);
//FiddlerObject.alert(sps)
var filename = "E:/此处是本地路径" + "/" + sps + ".json";
var curDate = new Date();
var sw : System.IO.StreamWriter;
if (System.IO.File.Exists(filename)){
sw = System.IO.File.AppendText(filename);
sw.Write(strBody);
}
else{
sw = System.IO.File.CreateText(filename);
sw.Write(strBody);
} sw.Close();
sw.Dispose();
}

8.在模拟器抖音中, 不断的去往下翻,往右翻, 查看用户页,fiddler编写的脚本就自动保存了你需要的数据。如图

9. 那么问题来了 当想大量的爬取数据时, 不可能人工翻页,所以这时候用到了模拟器自带的操作助手功能。

9.1,自己动手录取一段,你想让模拟器不断循环的操作,设置循环次数,往下翻,记得保存。

9.2. 点击播放按钮,模拟器就会自动循环你录制的操作,一直往下翻页,fiddler,会不断有新的相应被抓到,本地的json数据越来越多。

=======================================================

基本操作搞完了,那么拿到的json文件如何解析呢,这时候敲代码去吧。

=======================================================

10。说一下思路,具体代码不做展示。

10.1,从本地去到json文件,放到一个列表中,循环列表中的json

10.2  json.load()读取json文件content

10.3  取json中你所需的资料。

10.4 存储,我存的excel文件,出现了一些问题,这里我说一下。

# 存储时特殊字符会报错,此处用codecs存储,存储的csv会出现编码乱的问题,解决办法,右键用记事本打开保存的csv文件,另存为一下,编码格式选utf-8.
with codecs.open("./douyin/douyin.csv", "a+", encoding='utf-8') as f:
writer = csv.writer(f, dialect="excel")
writer.writerow(l)

10.5  爬到的数据,会有从重复的,去重很简单,这里就不说了。

展示一下我爬到的数据

python爬虫抖音 个人资料 仅供学习参考 切勿用于商业的更多相关文章

  1. Navicat15激活(仅供学习使用,严禁任何商业用途)

    Navicat15利用注册机破解的方法 需求 Navicat15下载及安装 也可以联系作者获取Navicat15及工具,仅供学习使用,严禁各种用于商业活动 1.打开搜索引擎,查找Navicat15,然 ...

  2. Python 爬虫——抖音App视频抓包

    APP抓包 前面我们了解了一些关于 Python 爬虫的知识,不过都是基于 PC 端浏览器网页中的内容进行爬取.现在手机 App 用的越来越多,而且很多也没有网页端,比如抖音就没有网页版,那么上面的视 ...

  3. python爬虫——抖音数据

    最近挺火的抖音短视频,不仅带火了一众主播,连不少做电商的也进驻其中,于是今天我来扒一扒这火的不要不要的抖音数据: 一.抓包工具获取用户ID 对于手机app数据,抓包是最直接也是最常见的手段,常用的抓包 ...

  4. Python爬虫-抖音小视频-mitmproxy与Appium

    目的:  爬取抖音小视频 工具:  mitmproxy.Appium 思路: 1.  通过 mitmproxy 截取请求, 找出 response 为 video 的请求. 2.  通过 mitmdu ...

  5. 最新版WinRAR5.61去广告代码教程分享(仅供学习交流)

    最新版WinRAR5.61去广告代码教程分享(仅供学习交流) 第一步:到WinRAR官网www.rarlab.com下载自己需要的版本,选择Chinese Simplified 64bit 安装即可. ...

  6. 微信小程序--基于ColorUI构建皮皮虾短视频去水印组件(仅供学习使用)

    微信小程序--基于ColorUI构建皮皮虾短视频去水印组件(仅供学习使用) 没错,我是皮友,我想学习舞蹈(/doge)和瑜伽 ,要无水印的那种有助于我加深学习. 1.组件效果展示 2.组件引入准备 h ...

  7. 教你用 Python 实现抖音热门表白软件

    之前在群里看到有人发了一个抖音上很火的小视频,就是一个不正经的软件,运行后问你是不是愿意做我的朋友,但你没法点击到「不同意」!并且没办法直接关闭窗口! 很不正经,很流氓,有点适合我. 效果大概是这样的 ...

  8. Python实现抖音关键词热度搜索小程序(附源码)

    今天给大家带来一个抖音热词小程序,废话不多说,直接上代码 import requests import json import urllib.parse import time ''' python知 ...

  9. 用 Python 下载抖音无水印视频

    说起抖音,大家或多或少应该都接触过,如果大家在上面下载过视频,一定知道我们下载的视频是带有水印的,那么我们有什么方式下载不带水印的视频呢?其实用 Python 就可以做到,下面我们来看一下. 很多人学 ...

随机推荐

  1. 发布一个自己做的图片转Base64的软件,Markdown写文章时能用到

    markdownpic 介绍 Markdown编辑时图片生成base64 软件架构 使用了.netcore winform框架 安装教程 直接运行即可 使用说明 拖拽图片文件 双击选择文件 复制粘贴图 ...

  2. cube-ui普通编译实践

    实践场景(在老的项目添加cube-ui) 查看vue-cli版本 npm info vue-cli // version: '2.9.6', 添加cube-ui依赖 npm install cube- ...

  3. CentOS7 firewalld docker 端口映射问题,firewall开放端口后,还是不能访问,解决方案

    # 宿主机ip: 192.168.91.19 docker run -itd --name tomcat -p 8080:8080 tomcat /usr/local/apache-tomcat-9. ...

  4. Python 3爬虫、数据清洗与可视化实战PDF高清完整版免费下载|百度云盘

    百度云盘:Python 3爬虫.数据清洗与可视化实战PDF高清完整版免费下载 提取码: 内容简介 <Python 3爬虫.数据清洗与可视化实战>是一本通过实战教初学者学习采集数据.清洗和组 ...

  5. 旧的成功的AndroidManifest.xml

    <?xml version="1.0" encoding="utf-8"?><manifest xmlns:android="htt ...

  6. 线程_互斥锁_Lock及fork创建子进程

    """ 创建锁 mutex = threading.Lock() 锁定 mutex.acquire([blocking]) 当blocking为True时,当前线程会阻塞 ...

  7. PHP array_replace() 函数

    实例 使用第二个数组($a2)的值替换第一个数组($a1)的值: <?php$a1=array("red","green");$a2=array(&quo ...

  8. CF R 209 div 2 CF359B Permutation 构造

    LINK:Permutation 休闲一下 开了一道构造题. 看起来毫无头绪 其实仔细观察第二个条件 0<=2k<=n. 容易想到当n是奇数的时候 k的范围更小 再手玩一下第一个条件 容易 ...

  9. 使用jsdelivr + GitHub + PicGo搭建免费图床

    前言 之前一直有开通有道云笔记会员,主要是为了会员markdown图片可以在线保存的功能,前一阵子会员到期,考虑这个功能可不可以自己单独实现,从而替代使用有道云会员. 通过网上搜索的方式,查询到了几种 ...

  10. day12. 闭包

    一.概念 """ 如果内函数使用了外函数的局部变量, 并且外函数把内函数返回出来的过程,叫做闭包 里面的内函数是闭包函数 """ 二.基本语 ...