Readme updates

This commit is contained in:
0xMarcio 2024-06-11 01:37:07 +02:00
parent ce630fb5b2
commit 4b9c5369e1
2 changed files with 6 additions and 6 deletions

BIN
.github/.DS_Store vendored Normal file

Binary file not shown.

View File

@ -31,13 +31,13 @@ def time_ago(datetime_str):
current_year = datetime.now().year current_year = datetime.now().year
total_repos_per_year = {} total_repos_per_year = {}
tz_header = {"Time-Zone": "Europe/Amsterdam"} #tz_header = {"Time-Zone": "Europe/Amsterdam"}
repositories_by_year = {} repositories_by_year = {}
for year in range(current_year, current_year - 5, -1): for year in range(current_year, current_year - 5, -1):
year_repositories = [] year_repositories = []
print(f"Fetching data for {year}") print(f"Fetching data for {year}")
response = requests.get(f'https://api.github.com/search/repositories?q=CVE-{year}%20in:name%20language:Shell%20language:Go%20language:ASP%20language:WebAssembly%20language:R%20language:Lua%20language:Python%20%20%20language:C++%20language:C%20language:JavaScript%20language:Perl%20language:PowerShell%20language:Ruby%20language:Rust%20language:Java%20%20language:PHP&s=updated&o=desc&page=1&per_page=100', headers=tz_header) response = requests.get(f'https://api.github.com/search/repositories?q=CVE-{year}%20in:name%20%20stars:>2%20language:Shell%20language:Go%20language:ASP%20language:WebAssembly%20language:R%20language:Lua%20language:Python%20%20%20language:C++%20language:C%20language:JavaScript%20language:Perl%20language:PowerShell%20language:Ruby%20language:Rust%20language:Java%20%20language:PHP&s=updated&o=desc&page=1&per_page=20')
if response.status_code != 200: if response.status_code != 200:
print(f"Failed to fetch data for year {year}: {response.status_code}") print(f"Failed to fetch data for year {year}: {response.status_code}")
continue continue
@ -55,7 +55,7 @@ for year in range(current_year, current_year - 5, -1):
if year_repositories: if year_repositories:
# Sort the repositories by stargazers_count in descending order # Sort the repositories by stargazers_count in descending order
year_repositories.sort(key=lambda repo: repo['stargazers_count'], reverse=True) #year_repositories.sort(key=lambda repo: repo['stargazers_count'], reverse=True)
repositories_by_year[year] = year_repositories repositories_by_year[year] = year_repositories
# Define a class to handle repository information # Define a class to handle repository information
@ -73,18 +73,18 @@ class RepositoryInfo:
def __eq__(self, other): def __eq__(self, other):
return self.html_url == other.html_url and self.name == other.name return self.html_url == other.html_url and self.name == other.name
final_output = ["# Trending Proof-of-Concept exploits"] final_output = ['<h1 align="center">Recently updated Proof-of-Concepts</h1>']
for year in range(current_year, current_year - 5, -1): for year in range(current_year, current_year - 5, -1):
if year in repositories_by_year: if year in repositories_by_year:
year_repositories = repositories_by_year[year] year_repositories = repositories_by_year[year]
year_repositories = [RepositoryInfo(repo["description"], repo["stargazers_count"], repo["name"], repo["html_url"], repo["updated_at"]) for repo in year_repositories] year_repositories = [RepositoryInfo(repo["description"], repo["stargazers_count"], repo["name"], repo["html_url"], repo["updated_at"]) for repo in year_repositories]
final_output.append(f"\n\n## {year}\n") final_output.append(f"\n\n## {year}\n")
final_output.append(f"### Top 10 of {total_repos_per_year[year]} Repositories\n") final_output.append(f"### Latest 20 of {total_repos_per_year[year]} Repositories\n")
final_output.append("| Stars | Updated | Name | Description |") final_output.append("| Stars | Updated | Name | Description |")
final_output.append("| --- | --- | --- | --- |") final_output.append("| --- | --- | --- | --- |")
for repo in year_repositories[:10]: for repo in year_repositories:
try: try:
description = repo.description or "" description = repo.description or ""
updated = time_ago(repo.updated_at) updated = time_ago(repo.updated_at)