# _*_ coding: utf-8 _*_

import   requests

import sys

headers = {"User-Agent":"Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/42.0.2311.90 Safari/537.36" }##去重方法

def distinct_data():

##读取txt中文档的url列表datalist_blank=[]

pathtxt  =  'H:/Request.txt'

with open(pathtxt) as f:

f_data_list=f.readlines()   #d得到的是一个list类型forain f_data_list:

datalist_blank.append(a.strip())#去掉\n strip去掉头尾默认空格或换行符# print(datalist)data_dict={}

for   data   in datalist_blank:

#print(type(data),data,'\n')

#print(data.split('/'),'\n',data.split('/').index('m'),'\n')

#url中以/为切分,在以m为切分

##把m后面的值放进字典key的位置,利用字典特性去重

if  int(data.split('/').index('m'))  ==  4 :

#此处为v6开头的url

#print(data,44,data.split('/')[5])data_key1=data.split("/")[5]

data_dict[data_key1]=data

elifint(data.split('/').index('m'))==6:

#此处为v1或者v3或者v9开头的url

#print(data,66,data.split('/')[7],type(data.split('/')[7]))data_key2=data.split("/")[7]

data_dict[data_key2] =data

#print(len(data_dict),data_dict)data_new=[]

forx,yin data_dict.items():

data_new.append(y)

return data_newdef responsedouyin():

data_url=distinct_data()

# 使用request获取视频url的内容# stream=True作用是推迟下载响应体直到访问Response.content属性# 将视频写入文件夹num = 1forurlin data_url:

res = requests.get(url,stream=True,headers=headers)

#res = requests.get(url=url, stream=True, headers=headers)#定义视频存放的路径pathinfo ='H:/douyin-video/%d.mp4'% num#%d 用于整数输出  %s用于字符串输出# 实现下载进度条显示,这一步需要得到总视频大小total_size = int(res.headers['Content-Length'])

#print('这是视频的总大小:',total_size)#设置流的起始值为0temp_size = 0

ifres.status_code == 200:

with open(pathinfo, 'wb') as file:

#file.write(res.content)

#print(pathinfo + '下载完成啦啦啦啦啦')

num += 1

#当流下载时,下面是优先推荐的获取内容方式,iter_content()函数就是得到文件的内容,指定chunk_size=1024,大小可以自己设置哟,设置的意思就是下载一点流写一点流到磁盘中

f or  chunk  in  res.iter_content(chunk_size=1024):

if   chunk:

temp_size += len(chunk)

file.write(chunk)

file.flush() #刷新缓存#############下载进度条部分start###############done = int(50 * temp_size / total_size)

#print('百分比:',done)sys.stdout.write("\r[%s%s] %d % %"% ('█'* done,''* (50 - done), 100 * temp_size / total_size)+" 下载信息:"+pathinfo +"下载完成啦啦啦啦啦")

sys.stdout.flush()#刷新缓存#############下载进度条部分end###############print('\n')#每一条打印在屏幕上换行输出

if  __name__  ==  '__main__':

responsedouyin()

python爬取抖音评论_使用python爬虫,批量爬取抖音app视频(requests+Fiddler+appium)相关推荐

  1. python爬取b站评论_用python 抓取B站视频评论,制作词云

    python 作为爬虫利器,与其有很多强大的第三方库是分不开的,今天说的爬取B站的视频评论,其实重点在分析得到的评论化作嵌套的字典,在其中取出想要的内容.层层嵌套,眼花缭乱,分析时应细致!步骤分为以下 ...

  2. python 抖音评论_新手python抖音无水印解析带详细注释

    资源来源网络,如果需要授权,请大家更换源码,模块仅供学习,如需商用请购买正版授权,本栏目不提供技术服务,积分不够请签到,或者会员中心投稿源码 注释都很详细,可以看看注释!友情提醒,仅供学习使用,请勿用 ...

  3. python爬取豆瓣电影评论_使用Python抓取豆瓣影评数据的方法

    抓取豆瓣影评评分 正常的抓取 分析请求的url 里面有用的也就是start和limit参数,我尝试过修改limit参数,但是没有效果,可以认为是默认的 start参数是用来设置从第几条数据开始查询的 ...

  4. python爬虫ip代理_python爬虫批量抓取ip代理的方法(代码)

    本篇文章给大家带来的内容是关于python爬虫批量抓取ip代理的方法(代码),有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助. 使用爬虫抓取数据时,经常要用到多个ip代理,防止单个ip访 ...

  5. python抓取抖音评论_一篇文章教会你用Python抓取抖音app热点数据

    今天给大家分享一篇简单的安卓app数据分析及抓取方法.以抖音为例,我们想要抓取抖音的热点榜数据. 要知道,这个数据是没有网页版的,只能从手机端下手. 首先我们要安装charles抓包APP数据,它是一 ...

  6. python爬取微博评论_用 python 爬取微博评论并手动分词制作词云

    最近上海好像有举行个什么维吾尔族的秘密时装秀,很好看的样子,不过我还没时间看.但是微博上已经吵翻了天,原因是 好吧,这不是我们关心的,我的心里只有学习 我爱学习 Python 爬虫 本次爬取的是这条微 ...

  7. python爬取知乎评论_从零开始写Python爬虫 --- 爬虫应用:IT之家热门段子(评论)爬取...

    不知道这里有没有喜欢刷it之家的小伙伴,我反正每天早上醒来第一件事就是打开it之家,看看有没有新鲜的段子 逃~ 其实这次是要来抓取it之家的热门评论,因为数量较多(上万),所以我们这次采用MongoD ...

  8. python爬取股吧评论_神级的爬虫工程师用Python教你爬取全站股票评论!买哪只有底呢!...

    爬取思路是这样的,先挖取所有股票的代码,放进数据库,然后根据股票代码爬取每一只股票的评论,多了,一定要加入代理池,我这里用的上上一篇文章写的代理池,我们给每个股票代码赋予一个状态值,一开始是outst ...

  9. python 爬虫动态网页的区别_Python开发爬虫之动态网页抓取篇:爬取博客评论数据——通过Selenium模拟浏览器抓取...

    区别于上篇动态网页抓取,这里介绍另一种方法,即使用浏览器渲染引擎.直接用浏览器在显示网页时解析 HTML.应用 CSS 样式并执行 JavaScript 的语句. 这个方法在爬虫过程中会打开一个浏览器 ...

最新文章

  1. 找子串替换(kmp)poj1572
  2. Linux Named 进程启动、停止脚本
  3. 关于导出excel 把一个dataset的多个datatable导入到一个excel的多个sheet中
  4. 【LDA学习系列】LDA-Python库
  5. cvc降噪和主动降噪_市面上的降噪耳机,物理降噪和主动降噪,你会怎么选择?...
  6. 轻雨物联网解决方案:农业物联网的市场前景分析
  7. scrapy setting配置
  8. java中exception作用_java中的异常Exception的划分,以及他们的特性。
  9. 霍金撰文探讨如何建造时间机器
  10. 高可用Kubernetes集群原理介绍
  11. hibernateTemplate.find或hibernateTemplate.save()执行操作没有反应,但是有sql语句
  12. 自己写的一个 游标 实例
  13. 【JZOJ】立体井字棋
  14. 未来互联网+大数据时代
  15. 学习笔记(8):ArcGIS10.X入门实战视频教程(GIS思维)-矢量数据数量分级显示、图表显示,多属性、lyr保存
  16. Hadoop中怎么解决Starting secondary namenodes [0.0.0.0]
  17. java drm_Linux DRM那些事-RockPI DRM
  18. rtx2060什么水平_老平台升级RTX2060,——性能,功耗,静音都一步到位!
  19. 如何快速统计Excel中Sheet数
  20. CentOS7_mysql数据库备份

热门文章

  1. 马尾综合征能恢复到什么地步,能否痊愈呢?
  2. {...this.props}是什么意思
  3. 【消息队列MQ使用场景及测试点总结】
  4. 两边宽度固定,中间自适应的布局实现总结(重点学习网格布局)
  5. 前端blob下载文件
  6. Certbot测试和Crontab定时任务
  7. Oracle入门必读
  8. 第七章 中途岛之战--Borland和组件技术
  9. 如何使用增强版swagger(通过网关端口看对应各个微服务的接口文档)
  10. 土木专业学python有什么用-UCL新增金融科技专业竟开设在土木学院?!