{"id":21324656,"url":"https://github.com/linuxluigi/flask-meetup-data-scraper","last_synced_at":"2026-04-07T23:31:18.450Z","repository":{"id":55481444,"uuid":"229955753","full_name":"linuxluigi/flask-meetup-data-scraper","owner":"linuxluigi","description":"Enable fulltext search for Meetup.com -\u003e Docs: https://flask-meetup-data-scraper.readthedocs.io/en/latest/","archived":false,"fork":false,"pushed_at":"2020-12-28T17:27:09.000Z","size":594,"stargazers_count":1,"open_issues_count":5,"forks_count":1,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-10-08T02:58:07.490Z","etag":null,"topics":["api","docker","docker-compose","elasticsearch","flask","meetup","python","python3","search","traefik"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/linuxluigi.png","metadata":{"files":{"readme":"README.rst","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2019-12-24T14:29:02.000Z","updated_at":"2020-02-04T12:02:58.000Z","dependencies_parsed_at":"2022-08-15T01:20:28.396Z","dependency_job_id":null,"html_url":"https://github.com/linuxluigi/flask-meetup-data-scraper","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/linuxluigi/flask-meetup-data-scraper","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/linuxluigi%2Fflask-meetup-data-scraper","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/linuxluigi%2Fflask-meetup-data-scraper/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/linuxluigi%2Fflask-meetup-data-scraper/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/linuxluigi%2Fflask-meetup-data-scraper/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/linuxluigi","download_url":"https://codeload.github.com/linuxluigi/flask-meetup-data-scraper/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/linuxluigi%2Fflask-meetup-data-scraper/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":31533823,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-07T16:28:08.000Z","status":"ssl_error","status_checked_at":"2026-04-07T16:28:06.951Z","response_time":105,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.5:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"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":["api","docker","docker-compose","elasticsearch","flask","meetup","python","python3","search","traefik"],"created_at":"2024-11-21T20:35:27.815Z","updated_at":"2026-04-07T23:31:18.434Z","avatar_url":"https://github.com/linuxluigi.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"Meetup Data Scraper\n======================\n\nDowload group \u0026 events from Meetup-API into Elasticsearch to make a fulltext search on every event.\n\n.. image:: https://img.shields.io/badge/code%20style-black-000000.svg\n     :target: https://github.com/ambv/black\n     :alt: Black code style\n.. image:: https://travis-ci.com/linuxluigi/flask-meetup-data-scraper.svg?branch=master\n     :target: https://travis-ci.com/linuxluigi/flask-meetup-data-scraper\n     :alt: Travis CI tests\n.. image:: https://readthedocs.org/projects/flask-meetup-data-scraper/badge/?version=latest\n     :target: https://flask-meetup-data-scraper.readthedocs.io/en/latest/?badge=latest\n     :alt: Documentation Status\n.. image:: https://api.codacy.com/project/badge/Grade/09b0518479d547d2a86c2a925e525160\n     :target: https://www.codacy.com/manual/linuxluigi/flask-meetup-data-scraper?utm_source=github.com\u0026amp;utm_medium=referral\u0026amp;utm_content=linuxluigi/flask-meetup-data-scraper\u0026amp;utm_campaign=Badge_Grade\n     :alt: Codacy quality\n.. image:: https://api.codacy.com/project/badge/Coverage/09b0518479d547d2a86c2a925e525160\n     :target: https://www.codacy.com/manual/linuxluigi/flask-meetup-data-scraper?utm_source=github.com\u0026amp;utm_medium=referral\u0026amp;utm_content=linuxluigi/flask-meetup-data-scraper\u0026amp;utm_campaign=Badge_Coverage\n     :alt: Coverage\n.. image:: https://static.deepsource.io/deepsource-badge-light-mini.svg\n     :target: https://deepsource.io/gh/linuxluigi/flask-meetup-data-scraper/?ref=repository-badge\n     :alt: DeepSource\n.. image:: https://pyup.io/repos/github/linuxluigi/flask-meetup-data-scraper/shield.svg\n     :target: https://pyup.io/repos/github/linuxluigi/flask-meetup-data-scraper/\n     :alt: Updates\n.. image:: https://pyup.io/repos/github/linuxluigi/flask-meetup-data-scraper/python-3-shield.svg\n     :target: https://pyup.io/repos/github/linuxluigi/flask-meetup-data-scraper/\n     :alt: Python 3\n\n.. figure:: docs/_static/meetup-search-DataFlow.png\n    :align: center\n    :alt: Data Flow\n    :figclass: align-center\n\n    Data flow \u0026 Container diagram\n\nBasic Commands\n--------------\n\nFlask Commands\n^^^^^^^^^^^^^^\n\nShow help::\n\n  $ docker-compose -f local.yml run flask flask\n\nMigrate all models into Elasticsearch::\n\n  $ docker-compose -f local.yml run flask flask migrate_models\n\nLoad a single Meetup Group::\n\n  $ docker-compose -f local.yml run flask flask get_group MeetupGoupUrlName\n  $ docker-compose -f local.yml run flask flask get_group --sandbox True # load sandbox group\n\nLoad all groups from JSON files from a path, default path is ``/app/meetup_groups``::\n\n  $ docker-compose -f local.yml run flask flask get_groups # use default path\n  $ docker-compose -f local.yml run flask flask get_groups /app/meetup_groups # use custom path\n  $ docker-compose -f local.yml run flask flask get_groups --load_events False # don't load events from groups\n\nLoad new meetup zip codes from meetup.com within a boundingbox::\n\n  $ docker-compose -f local.yml run flask flask load_zip_codes 47.2701114 55.099161 5.8663153 15.0418087 # germany\n  $ docker-compose -f local.yml run flask flask load_zip_codes 45.817995 47.8084648 5.9559113 10.4922941 # switzerland\n  $ docker-compose -f local.yml run flask flask load_zip_codes 46.3722761 49.0205305 9.5307487 17.160776 # austria\n\nLoad groups for a country::\n\n  $ docker-compose -f local.yml run flask flask load_groups --country DE # germany\n  $ docker-compose -f local.yml run flask flask load_groups --country CH # switzerland\n  $ docker-compose -f local.yml run flask flask load_groups --country AT # austria\n\nStart api-server::\n\n  $ docker-compose -f local.yml up flask\n\nType checks\n^^^^^^^^^^^\n\nRunning type checks with mypy:\n\n::\n\n  $ docker-compose -f local.yml run flask coverage run -m mypy /app\n\nTest coverage\n^^^^^^^^^^^^^\n\nTo run the tests, check your test coverage, and generate an HTML coverage report::\n\n    $ docker-compose -f local.yml run flask coverage run -m pytest\n    $ docker-compose -f local.yml run flask coverage run -m coverage html\n    $ open htmlcov/index.html\n\nRunning tests with py.test\n~~~~~~~~~~~~~~~~~~~~~~~~~~\n\n::\n\n  $ docker-compose -f local.yml run flask coverage run -m pytest\n\n\nCreate Docs\n^^^^^^^^^^^\n\nFor creating the docs use from sphinx the makefile::\n\n    $ docker-compose -f local.yml run flask make --directory docs html\n    $ open docs/_build/index.html\n\nThan the docs will be generated into ``docs/_build/html``.\n\nFor more options check out the help::\n\n    $ docker-compose -f local.yml run flask make --directory docs help\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Flinuxluigi%2Fflask-meetup-data-scraper","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Flinuxluigi%2Fflask-meetup-data-scraper","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Flinuxluigi%2Fflask-meetup-data-scraper/lists"}