A simple scraper for Tiktok
Project description
Tiktok simple scraper
Features
- Scrapes all the posts of a tiktok account
- Scrapes all the comments of a post
Installation
pip install tiktok_simple_scraper
Usage
You need to obtain a ms token and the "id" or "secuid" of the account. The ms token is a token that is used to authenticate the requests to the tiktok api. The "id" or "secuid" is the unique identifier of the account you want to scrape. You can obtain the ms token and the "id" or "secuid" of the account by opening tiktok and in your browser console see the requests it makes (see the network tab)
from datetime import datetime, timedelta
import os
from tiktok_simple_scraper.entities import ScraperOptions
from tiktok_simple_scraper.opts import LogCallbacks
from tiktok_simple_scraper.tiktok import TikTokAccountScraper
opts = ScraperOptions(
most_old_date=datetime.now() - timedelta(days=3 * 30),
max_comments_per_post=1000,
callbacks=LogCallbacks(),
check_account_in_storage=True,
)
ms_token = os.environ.get("MS_TOKEN")
scraper = TikTokAccountScraper(
ms_token=ms_token,
)
# Find by secuid
account_secuid = "MS4wLjABAAAAUgpIunuFPI8GMn_zdK8OXxV7LCY3sGClYMubx-GSpu_g75SB_Sb8nNxIKm3TytOX"
result = scraper.scrape(account_secuid, opts)
print(result.json())
# Find by username
account_name = "bancoestado_oficial"
result = scraper.scrape(account_name, opts)
print(result.json())
Output example:
{
"name_to_show": "bancoestado_oficial",
"id": "7158465443694724101",
"sec_uid": "MS4wLjABAAAAUgpIunuFPI8GMn_zdK8OXxV7LCY3sGClYMubx-GSpu_g75SB_Sb8nNxIKm3TytOX",
"followers_count": 1060,
"following_count": 0,
"heart_count": 2464,
"video_count": 16,
"friend_count": 0,
"bio_link": "",
"avatar": "https://p16-sign-va.tiktokcdn.com/tos-maliva-avt-0068/71fff1700b476541e48a943ce50caab5~c5_1080x1080.jpeg?lk3s=a5d48078&nonce=28069&refresh_token=878c37afe1f51de8cae6990a1ee9df9b&x-expires=1717844400&x-signature=lKabZQrNtoMJmdUW1oyfSBXcL%2Fo%3D&shp=a5d48078&shcp=81f88b70",
"signature": "¡Somos la cuenta oficial de BancoEstado en TikTok! #Estamosporti",
"posts": [
{
"id": "7362193936972090629",
"sec_id": null,
"url": "7362193936972090629",
"hashtags": [],
"text": "¿Quién más así? #foryou #Bancoestado #pedropedropedropedro #trend #trending ",
"type": "VIDEO",
"date": "2024-04-26T11:12:36",
"reactions": [
{
"type": "LIKE",
"count": 113
}
],
"comments": [
{
"text": "Es viernes nuestro cuerpo lo sabe",
"user": "elaahumada",
"date": "2024-04-26T18:51:02",
"url": "7362312008602256133",
"reactions": [
{
"type": "LIKE",
"count": 0
}
],
"replies": [],
"sentiments": null,
"user_name": "Ela Ahumada",
"user_metadata": {
"sec_uid": "MS4wLjABAAAALllrU5MkSPTaH2oO8ByCERShguFrTi20Z9maUWQi7Ob8ETi7XuN1fTGx_Wg3gaJr",
"id": "239504324559560704"
},
"score": null
}
],
}
] // More posts...
}
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file tiktok_simple_scraper-0.0.6.tar.gz
.
File metadata
- Download URL: tiktok_simple_scraper-0.0.6.tar.gz
- Upload date:
- Size: 16.3 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.1.0 CPython/3.12.2
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | c42d0be561b71a5807a8f19509ba8e18797208087b2f4df72efe1ee496cf431f |
|
MD5 | 74d53abac097b2ca6c376ec372a76c68 |
|
BLAKE2b-256 | 5befe65c7e50163c39e986e80b546fd0643b031ed24922c8655c50d2e95fb0cd |
File details
Details for the file tiktok_simple_scraper-0.0.6-py3-none-any.whl
.
File metadata
- Download URL: tiktok_simple_scraper-0.0.6-py3-none-any.whl
- Upload date:
- Size: 16.3 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.1.0 CPython/3.12.2
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 9f1dd49bf96d9cfce7bf0c813ae539d60cd936d1ff78cf126ae70d8db6397426 |
|
MD5 | ebd432a9a8238fe0e2b570c0d8939d8f |
|
BLAKE2b-256 | 4f3977116aa1fea9fa99128397703f13bf8e9c0d56429deaddea2d01bed43dd3 |