{"id":24941600,"url":"https://github.com/ryanking13/bellorin","last_synced_at":"2025-06-29T22:35:45.157Z","repository":{"id":40966745,"uuid":"235526298","full_name":"ryanking13/bellorin","owner":"ryanking13","description":"Multi-threaded Social Media Crawler 🔍","archived":false,"fork":false,"pushed_at":"2022-12-08T03:31:08.000Z","size":111,"stargazers_count":1,"open_issues_count":3,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-02-02T18:28:10.037Z","etag":null,"topics":["crawler","instagram","social-media"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/ryanking13.png","metadata":{"files":{"readme":"README-en.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2020-01-22T08:06:04.000Z","updated_at":"2022-06-22T01:12:47.000Z","dependencies_parsed_at":"2023-01-25T04:15:10.082Z","dependency_job_id":null,"html_url":"https://github.com/ryanking13/bellorin","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ryanking13%2Fbellorin","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ryanking13%2Fbellorin/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ryanking13%2Fbellorin/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ryanking13%2Fbellorin/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/ryanking13","download_url":"https://codeload.github.com/ryanking13/bellorin/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":246072411,"owners_count":20719312,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["crawler","instagram","social-media"],"created_at":"2025-02-02T18:23:35.575Z","updated_at":"2025-03-28T17:43:08.264Z","avatar_url":"https://github.com/ryanking13.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Bellorin\n\nKeyword based Social Media crawler\n\n## Installation\n\n\u003e pip install -r requirements.txt\n\n## Available Social Media\n\n- Instagram\n- Naver Blog\n  - [Naver API required](https://developers.naver.com/products/search/)\n- Naver Cafe\n  - [Naver API required](https://developers.naver.com/products/search/)\n- Tistory\n  - [Kakao REST API required](https://developers.kakao.com/features/kakao)\n\n\n## Usage\n\n```sh\nusage: run.py [-h] [-v] [-t TARGETS [TARGETS ...]] [-d MAX_DAYS] [-o OUTPUT]\n              [--no-analyse] [--all-columns]\n              query [query ...]\n\npositional arguments:\n  query                 Query to crawl\n\noptional arguments:\n  -h, --help            show this help message and exit\n  -v, --verbose         Print all debug logs\n  -t TARGETS [TARGETS ...], --targets TARGETS [TARGETS ...]\n                        Targets services to crawl (default: instagram naver-\n                        blog naver-cafe tistory)\n  -d MAX_DAYS, --max-days MAX_DAYS\n                        Days to crawl (start from today, going backwards)\n  -o OUTPUT, --output OUTPUT\n                        Set output log file. if not specified, log will be\n                        printed only to stdout\n  --no-analyse          Do not analyse scrapped data after crawling\n  --all-columns         Add additional columns to scrapped data\n```\n\n### Prerequisite\n\nSet API keys in `config.py`.\n\nYou can get API KEYs at links below.\n\n- [NAVER](https://developers.naver.com/products/search/)\n- [KAKAO](https://developers.kakao.com/docs/restapi/search)\n\n\u003e Writing directly to `config.py` is not recommended. Use environment variables or copy `config.py` to `_config.py` and modify `_config.py`.\n\n### Simple Usage\n\n```sh\npython run.py thornapple bandthornapple\n# python run.py \u003cquery\u003e\n# python run.py \u003cquery1\u003e \u003cquery2\u003e ...\n```\n\nEvery collected data is saved at `save/` directory. \n\n### Advanced Usage\n\n#### Specifying target platforms\n\n```sh\n# Collects data from Naver Blog and Naver Cafe\npython run.py thornapple -t naver-blog naver-cafe\n```\n\nBy using `-t` option, you can specify target platforms to scrap data.\n\n#### Setting date range\n\n```sh\n# From today, to 30 days before\npython run.py thornapple -d 30\n```\n\nBy using `-d` option, you can change date range.\n\n#### Other\n\n```sh\n# Verbose mode\npython run.py thornapple -v\n\n# Save log to specified file\npython run.py thornapple -o out.log\n```\n\n### Miscellaneous\n\n- The name `Bellorin` came from the novel [Polaris Rhapsody](https://en.wikipedia.org/wiki/Lee_Yeongdo#Other_novels) by _Lee Yeongdo(이영도)_, Bellorin is a girl who knows everything in the world.","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fryanking13%2Fbellorin","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fryanking13%2Fbellorin","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fryanking13%2Fbellorin/lists"}