Created
November 22, 2023 09:21
-
-
Save ikbalsingh/d12d43ef868a730442fa07ff39ee0124 to your computer and use it in GitHub Desktop.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
import requests | |
import gzip | |
import shutil | |
import os | |
def download_and_extract_gz(url): | |
# Send an HTTP GET request to the URL | |
response = requests.get(url) | |
if response.status_code == 200: | |
# Request was successful, save the content to a local .gz file | |
with open("higgs-social_network.edgelist.gz", "wb") as file: | |
file.write(response.content) | |
# Decompress the .gz file | |
with gzip.open("higgs-social_network.edgelist.gz", 'rb') as f_in: | |
with open("higgs-social_network.edgelist", 'wb') as f_out: | |
shutil.copyfileobj(f_in, f_out) | |
# Remove the downloaded .gz file | |
os.remove("higgs-social_network.edgelist.gz") | |
print(f"File extracted and saved.") | |
else: | |
print(f"Failed to download the .gz file. Status code: {response.status_code}") | |
# Usage | |
download_and_extract_gz("https://snap.stanford.edu/data/higgs-social_network.edgelist.gz") | |
import networkx as nx | |
def load_edge_list(file_path): | |
# Create an empty graph | |
G = nx.Graph() | |
# Read the edge list from the file | |
with open(file_path, 'r') as file: | |
for line in file: | |
# Assuming the edge list is space or tab-separated | |
u, v = map(int, line.strip().split()) | |
G.add_edge(u, v) | |
return G | |
# Usage | |
file_path = 'higgs-social_network.edgelist' | |
graph = load_edge_list(file_path) | |
# Now you can use the 'graph' object for various graph-related operations |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment