{"id":24360448,"url":"https://github.com/dms-codes/bmkg-reader","last_synced_at":"2026-06-04T17:31:05.114Z","repository":{"id":169618370,"uuid":"372817625","full_name":"dms-codes/bmkg-reader","owner":"dms-codes","description":"BMKG Weather Data Processor This Python script is a data processing tool that fetches and processes weather forecast data from the Indonesian Meteorology, Climatology, and Geophysics Agency (BMKG) website.","archived":false,"fork":false,"pushed_at":"2024-10-19T03:48:25.000Z","size":422,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-12-12T18:57:09.288Z","etag":null,"topics":["bmkg","python","weather"],"latest_commit_sha":null,"homepage":"https://github.com/dms-codes/bmkg-reader","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/dms-codes.png","metadata":{"files":{"readme":"README.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,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2021-06-01T12:13:15.000Z","updated_at":"2024-10-19T03:48:28.000Z","dependencies_parsed_at":"2025-03-12T08:38:34.677Z","dependency_job_id":null,"html_url":"https://github.com/dms-codes/bmkg-reader","commit_stats":null,"previous_names":["dms-codes/bmkg-reader"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/dms-codes/bmkg-reader","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dms-codes%2Fbmkg-reader","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dms-codes%2Fbmkg-reader/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dms-codes%2Fbmkg-reader/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dms-codes%2Fbmkg-reader/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/dms-codes","download_url":"https://codeload.github.com/dms-codes/bmkg-reader/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dms-codes%2Fbmkg-reader/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":33916319,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-26T15:22:16.424Z","status":"online","status_checked_at":"2026-06-04T02:00:06.755Z","response_time":64,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"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":["bmkg","python","weather"],"created_at":"2025-01-18T21:19:57.064Z","updated_at":"2026-06-04T17:31:05.061Z","avatar_url":"https://github.com/dms-codes.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# BMKG Weather Data Processor\n\nThis Python script is a data processing tool that fetches and processes weather forecast data from the Indonesian Meteorology, Climatology, and Geophysics Agency (BMKG) website. It retrieves XML files containing weather forecasts for different regions and extracts relevant information such as location coordinates, weather parameters, and timestamps.\n\n## Prerequisites\n\nBefore you begin, make sure you have the following:\n\n- Python installed on your system.\n- Required Python libraries, including `xml.etree.ElementTree`, `requests`, `pandas`, and `BeautifulSoup (bs4)`. You can install them using the following command:\n\n   ```bash\n   pip install xml.etree.ElementTree requests pandas beautifulsoup4\n   ```\n\n## Usage\n\n1. Clone this repository or download the script.\n\n2. Open the script and make the following adjustments as needed:\n\n   - Set the `callsign`, `loc`, and `apikey` variables in the script.\n   - Modify the URLs in the `get_xml_files()` function to fetch the desired XML files. You can use the provided BMKG website URL as a starting point.\n\n3. Run the script using the following command:\n\n   ```bash\n   python bmkg_weather_processor.py\n   ```\n\n4. The script will fetch and process the XML files, extracting weather forecast data for different regions.\n\n5. The processed data is stored in a Pandas DataFrame named `df`.\n\n## Example\n\nThe script processes weather data and creates a Pandas DataFrame with columns such as `area_id`, `lat`, `long`, `description`, `param_id`, `param_description`, `timerange_datetime`, `value`, and `unit`. Here's a simplified example of what the DataFrame might look like:\n\n```plaintext\n   area_id       lat        long   description param_id  ... timerange_datetime  value   unit\n0  Aceh 6.166667  97.083333  Cuaca        1   ...  202309300200     Cerah  Cuaca\n1  Aceh 6.166667  97.083333  Cuaca        2   ...  202309300800     Cerah  Cuaca\n2  Aceh 6.166667  97.083333  Cuaca        1   ...  202309301400     Cerah  Cuaca\n3  Aceh 6.166667  97.083333  Cuaca        2   ...  202309301900     Cerah  Cuaca\n4  Aceh 6.166667  97.083333  Cuaca        1   ...  202309302000     Cerah  Cuaca\n```\n\n## Note\n\n- The script fetches weather data from the BMKG website, so ensure that you have internet access to make HTTP requests.\n\n- The script may require further customization depending on your specific data processing needs or the structure of the BMKG XML files.\n\n- Data is saved to a Pickle file named \"data.pickle\" for further analysis or usage.\n\nFeel free to explore and customize the script to suit your specific requirements or integrate it into other projects as necessary.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdms-codes%2Fbmkg-reader","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdms-codes%2Fbmkg-reader","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdms-codes%2Fbmkg-reader/lists"}