TouTiao
精仿今日头条
Install / Use
/learn @chaychan/TouTiaoREADME
精仿今日头条
精仿今日头条,数据是抓取今日头条App的数据。使用RxJava + Retrofit + MVP开发的开源项目,仅供学习用途。觉得对你有帮助的话请帮忙star一下,让更多人知道,多谢啦!
2022-11-09
近期有个小伙伴向我反馈项目下下来后编译出错,愿意付费希望我解决下,今天抽空把问题解决了下,希望可以帮到他,当然也是无偿的,这个 项目从17年到现在已经5年了,很高兴还可以帮到一些刚入门的安卓朋友或者参考开发的朋友,由衷感谢大家支持和Star。
2019-12-02
时间过得真快,不知不觉就过了一年,去年年底我更新了视频解析的逻辑,然后一直用到前段时间,有小伙伴issue上提出又不能解析了。由于前段时间比较忙,一直没能腾出时间来解决这个问题,上周末通过分析,发现以往解析视频的逻辑已经用不了了,所以重新找了个可以解析头条视频的网站,并分析到了他们的解析接口规则,修复了视频播放的问题,小伙伴们可以用作交流,讨论下,但不可用作商用,主要有以下两点原因:
-
调用解析接口并未获得该网站的同意,属于非正常渠道获取,仅用于学习交流
-
该网站可能变动接口规则,如果真的有解析视频方面的需求,可以和该网站联系和合作
2018-12-04 更新内容:
项目已经发布很久了,最近看到有不少小伙伴帮我star,想想自己已经好久没有维护这个项目了,主要是因为忙,最近抽空把issue上提出的问题解决了,方便需要参考到其中某些功能的小伙伴使用,同时也希望这个项目可以成为我在github上首个star破k的项目,希望小伙伴们可以帮忙star一下,多谢了,项目的话我也会继续维护和更新。
-
更改右滑关闭的依赖库,解决8.0以上系统不兼容右滑的问题;
-
修改视频解析逻辑,之前通过加载详情页成功后延迟5秒获取html中的video标签内的视频地址,体验极差,故花了几天时间寻找解析头条视频地址的方法,经过多次实验终于成功;
-
解决视频播放错乱的问题;更换了最新版的饺子播放器;
-
整理项目结构,包的路径等
Apk下载地址
[点击下载体验]
扫码下载体验:

Blog
http://blog.csdn.net/chay_chan/article/details/75319452
演示截图
首页

视频

微头条

我的

gif图
新闻列表、视频列表

非视频新闻详情页面

查看和保存图片

视频播放、视频详情页面

使用到的第三方库
- okhttp
- Retrofit
- RxJava
- ButterKnife
- Gson
- BottomBarLayout(轻量级底部导航栏)
- BaseRecyclerViewAdapterHelper(ReclerView万能适配器)
- StateView(用于几种状态布局的切换)
- JieCaoVideoPlayer,改名 JiaoZiVideoPlayer (视频播放)
- BGARefreshLayout-Android(下拉刷新)
- Eyes(修改状态栏颜色)
- ColorTrackTabLayout
- EventBus
- KLog(log管理)
现有功能
1.获取各种频道的新闻列表,包括视频和非视频新闻;
2.查看新闻详情,包括视频和非视频新闻的详情;
3.查看新闻评论列表;
4.新闻数据本地存储,已经获取到的新闻数据保存在本地数据库中,上拉加载更多时可查看历史新闻;
5.底部页签点击下拉刷新;
6.视频列表播放中的视频不可见时停止播放。
7.查看和保存图片。
技术要点
1.新闻数据的抓取和分析,使用fidder抓取,具体使用可参考下面的网址:
http://www.tuicool.com/articles/BJjQZf
2.新闻列表多种Item布局的展示,使用的是我封装的MultipleItemRvAdapter,基于BaseRecyclerViewAdapterHelper封装,便于多布局条目的管理:
https://github.com/chaychan/MultipleItemRvAdapter
3.视频源地址的解析,请查看我写的博客 今日头条最新视频解析方法
声明
这个属于个人开发作品,仅做学习交流使用,如用到实际项目还需多考虑其他因素如并发等,请多多斟酌。诸位勿传播于非技术人员,拒绝用于商业用途,数据均属于非正常渠道获取,原作公司拥有所有权利。
Related Skills
node-connect
348.2kDiagnose OpenClaw node connection and pairing failures for Android, iOS, and macOS companion apps
frontend-design
108.9kCreate distinctive, production-grade frontend interfaces with high design quality. Use this skill when the user asks to build web components, pages, or applications. Generates creative, polished code that avoids generic AI aesthetics.
openai-whisper-api
348.2kTranscribe audio via OpenAI Audio Transcriptions API (Whisper).
qqbot-media
348.2kQQBot 富媒体收发能力。使用 <qqmedia> 标签,系统根据文件扩展名自动识别类型(图片/语音/视频/文件)。
