{"id":18315177,"url":"https://github.com/kingakeem/url-graph","last_synced_at":"2025-04-09T12:46:13.252Z","repository":{"id":210879516,"uuid":"727441313","full_name":"KingAkeem/url-graph","owner":"KingAkeem","description":"A Neo4j project designed to store and manage relationships between URLs","archived":false,"fork":false,"pushed_at":"2023-12-05T19:00:23.000Z","size":15,"stargazers_count":2,"open_issues_count":0,"forks_count":1,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-02-15T06:44:08.474Z","etag":null,"topics":["cypher","database","graph","graph-database","graphdatabase","neo4j","url","webscraping"],"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/KingAkeem.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":"2023-12-04T21:41:17.000Z","updated_at":"2024-09-02T16:39:41.000Z","dependencies_parsed_at":null,"dependency_job_id":"9eeb7a4f-5404-41f6-945d-d55b81ac83f0","html_url":"https://github.com/KingAkeem/url-graph","commit_stats":null,"previous_names":["kingakeem/url-graph"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/KingAkeem%2Furl-graph","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/KingAkeem%2Furl-graph/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/KingAkeem%2Furl-graph/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/KingAkeem%2Furl-graph/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/KingAkeem","download_url":"https://codeload.github.com/KingAkeem/url-graph/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248045220,"owners_count":21038553,"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":["cypher","database","graph","graph-database","graphdatabase","neo4j","url","webscraping"],"created_at":"2024-11-05T16:37:42.929Z","updated_at":"2025-04-09T12:46:13.235Z","avatar_url":"https://github.com/KingAkeem.png","language":"Python","readme":"# URL-Graph\n\n![Neo4j Logo](https://dist.neo4j.com/wp-content/uploads/20210423072428/neo4j-logo-2020-1.svg)\n\n**URL-Graph** is a Neo4j project designed to store and manage relationships between URLs. This graph database allows you to model and query the connections between different web addresses, providing valuable insights into the structure of your web data.\n\n## Introduction\n\nIn the world of web data, understanding relationships between URLs is crucial. The **URL-Graph** project leverages the power of Neo4j to create a graph representation of these relationships, enabling easy navigation and analysis.\n\n## Features\n\n- **Graph Database:** Utilize Neo4j's powerful graph database to model and store URL relationships.\n- **Cypher Queries:** Leverage the expressive Cypher query language to extract valuable insights from the graph.\n\n## Getting Started\n\n### Prerequisites\n\nBefore you begin, ensure you have the following prerequisites installed:\n\n- Neo4j Database [Download Neo4j](https://neo4j.com/download/)\n- Python [Download Python](https://www.python.org/downloads/)\n\n### Installation\n\n1. Clone the repository:\n```bash\ngit clone https://github.com/KingAkeem/url-graph.git\n```\n\n2. Install dependencies:\n```bash\ncd url-graph\npip install -r requirements.txt\n```\n\n### Configuration (TODO)\nUpdate the configuration file with your Neo4j connection details (config.yml):\n```yaml\nneo4j:\n  uri: bolt://localhost:7687\n  username: your-username\n  password: your-password\n```\n\n### Running the application\n3. Start the Neo4j database, this will be based on the OS that you're using. Check Neo4j instructions for further explanation.\n\n4. Execute the application\n```bash\npython main.py -u https://www.example.com -d 3 # -u/--url to specify URI and -d/--depth to specify depth of graph\n```\n\nWill dockerize project at some point.\n\n## Access the Neo4j Browser or use Cypher queries to interact with the URL graph.\nBrowser URL: http://localhost:7474/browser/\n\n```cypher\n// Example Cypher Query to find relationships for a specific URL\nMATCH (n:Node {url: 'https://example.com'})\n-[relationship:parent]-()\nRETURN n, relationship;\n```\n\n## Examples\n\n### With a depth of 1\n![graph](https://github.com/KingAkeem/url-graph/assets/13573860/402022ff-4305-4808-b0e5-604bd5b6146f)\n\n### With a depth of 3\n![graph (1)](https://github.com/KingAkeem/url-graph/assets/13573860/f2114120-4d90-4049-b1be-5b3b4be44917)\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkingakeem%2Furl-graph","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fkingakeem%2Furl-graph","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkingakeem%2Furl-graph/lists"}