ๆณจ๏ผ้กน็ฎๅทฒไธๅฏ็จ...
DouYin
API of DouYin App for humans.
Installation
pip3 install douyin
Usage
Here is the sample code:
import douyin
from douyin.structures import Topic, Music
# define file handler and specify folder
video_file_handler = douyin.handlers.VideoFileHandler(folder='./videos')
music_file_handler = douyin.handlers.MusicFileHandler(folder='./musics')
# define mongodb handler
mongo_handler = douyin.handlers.MongoHandler()
# define downloader
downloader = douyin.downloaders.VideoDownloader([mongo_handler, video_file_handler, music_file_handler])
for result in douyin.hot.trend():
for item in result.data:
# download videos of topic/music for 100 max per
downloader.download(item.videos(max=100))
then you can get:
Item <Topic: <1565818716518401, panama>>
Processing <Video: <6616517521098935565, ็้ฆ#panama>> ...
Processing <Video: <6500385230921141518, ๅๅๅๅๅ>> ...
...
Processing <Video: <6479958542747962637, ๐
เธเนเธญเธเธเธดเธเธเน>> ...
Processing <Video: <6473811426107460878, ๐>> ...
0%| | 0/10 [00:00<?, ?it/s]
Processing 1-10 of files
Processing <Video: <6616517521098935565, ็้ฆ#panama>> ...
Saving <Video: <6616517521098935565, ็้ฆ#panama>> to mongodb...
Processing <Video: <6500385230921141518, ๅๅๅๅๅ>> ...
Saving <Video: <6500385230921141518, ๅๅๅๅๅ>> to mongodb...
Processing <Video: <6562690160868199693, ็ๅ็ธๅบ็CๅฉCๅฉ่ทจ>> ...
....
Downloading <Video: <6580510322468064526, ็ฌฌไบ้ ๅ้ข็ๅฐๅฅๅฅ>> ...
Saved <Video: <6479958542747962637, ๐
เธเนเธญเธเธเธดเธเธเน>> to mongodb successfully
Downloading <Video: <6479958542747962637, ๐
เธเนเธญเธเธเธดเธเธเน>> ...
Saved <Video: <6473811426107460878, ๐>> to mongodb successfully
Downloading <Video: <6473811426107460878, ๐>> ...
Downloaded file to ./videos/6580510322468064526.mp4
10%|โโโโโ | 1/10 [00:01<00:16, 1.84s/it]
Downloaded file to ./videos/6516746291806997763.mp4
20%|โโโโโโโโโโ | 2/10 [00:01<00:10, 1.33s/it]
Downloaded file to ./videos/6600742831352974596.mp4
40%|โโโโโโโโโโโโโโโโโโโ | 4/10 [00:02<00:05, 1.03it/s]
Downloaded file to ./videos/6484393014599879950.mp4
50%|โโโโโโโโโโโโโโโโโโโโโโโ | 5/10 [00:02<00:04, 1.15it/s]
Downloaded file to ./videos/6616517521098935565.mp4
60%|โโโโโโโโโโโโโโโโโโโโโโโโโโโโ | 6/10 [00:03<00:03, 1.27it/s]
Downloaded file to ./videos/6479958542747962637.mp4
70%|โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ | 7/10 [00:03<00:01, 1.68it/s]
Downloaded file to ./videos/6472305134377372941.mp4
80%|โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ | 8/10 [00:03<00:00, 2.05it/s]
Downloaded file to ./videos/6562690160868199693.mp4
90%|โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ | 9/10 [00:04<00:00, 2.27it/s]
Downloaded file to ./videos/6500385230921141518.mp4
100%|โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ| 10/10 [00:04<00:00, 2.33it/s]
Examples
See examples