5
5
import pickle
6
6
7
7
8
- # https://pypi.org/simple/
9
-
10
8
def get_db_connection ():
11
9
conn = sqlite3 .connect ('/home/kolby/Documents/GitHub/Mining-Diamonds-I-mean-data/identifier.sqlite' )
12
10
return conn
13
11
12
+
14
13
def check_if_we_care (packageName ):
15
14
try :
16
- response = requests .get ("https://libraries.io/api/Pypi/" + str (packageName .split ("=" )[0 ]) + "?api_key=96f6c6227c05020af5b777f5f6e0134c" ).json ()
15
+ response = requests .get ("https://libraries.io/api/Pypi/" + str (
16
+ packageName .split ("=" )[0 ]) + "?api_key=96f6c6227c05020af5b777f5f6e0134c" ).json ()
17
17
print (response )
18
18
if response ["dependents_count" ] > 0 and response ["dependent_repos_count" ] > 0 :
19
19
return True , response ["versions" ]
@@ -30,19 +30,21 @@ def get_import_name(packageName):
30
30
importNames = []
31
31
conn = get_db_connection ()
32
32
cursor = conn .cursor ()
33
- post = cursor .execute ('SELECT * FROM packages WHERE package = ?' , [packageName ]).fetchone ()
34
- if post is None :
33
+ does_the_table_contain_this_package = cursor .execute ('SELECT * FROM packages WHERE package = ?' ,
34
+ [packageName ]).fetchone ()
35
+ if does_the_table_contain_this_package is None :
35
36
do_we_care_boolean , versions_list = check_if_we_care (packageName )
36
37
if do_we_care_boolean :
37
- posts = cursor .execute ('INSERT INTO packages (package) VALUES (?);' , [packageName ]).fetchone ()
38
+ cursor .execute ('INSERT INTO packages (package) VALUES (?);' , [packageName ]).fetchone ()
38
39
for version in versions_list :
39
40
version = version ["number" ]
40
41
try :
41
42
importNames = JohnnyDist (packageName + "==" + version ).import_names
42
43
if len (importNames ) != 0 :
43
44
for i in importNames :
44
- posts = cursor .execute ('INSERT INTO importNames (importName, packageName, version) VALUES (?, ?, ?);' ,
45
- (i , packageName , version )).fetchone ()
45
+ cursor .execute (
46
+ 'INSERT INTO importNames (importName, packageName, version) VALUES (?, ?, ?);' ,
47
+ (i , packageName , version )).fetchone ()
46
48
conn .commit ()
47
49
else :
48
50
print ("error Library you requested doesn't exist" )
@@ -51,18 +53,14 @@ def get_import_name(packageName):
51
53
(packageName , version , str (e ))).fetchone ()
52
54
conn .commit ()
53
55
print ("Error: python package: " + packageName + " failed on version: " + version + " error:" , e )
54
- else :
55
- importNames = {"error" : "Library you requested doesn't meet the requirements for our program to be considered a library" }
56
- bob = cursor .execute ('SELECT * FROM importNames WHERE packageName = ?' , (packageName ,)).fetchall ()
57
- importNames = [{"importName" : i [1 ], "version" : i [3 ]} for i in bob ]
58
56
conn .close ()
59
- return importNames
57
+
60
58
61
59
def get_list_of_pypi_packages ():
62
60
def get_yesterday_data ():
63
61
url_set_old = set ()
64
62
try :
65
- with open ('yesterday_set_data.yourmom ' , 'rb' ) as fp :
63
+ with open ('yesterday_set.pickle ' , 'rb' ) as fp :
66
64
url_set_old = pickle .load (fp )
67
65
except :
68
66
pass
@@ -78,7 +76,7 @@ def get_today_data():
78
76
return url_set
79
77
80
78
def dump_todays_data (url_set ):
81
- with open ('yesterday_set_data.yourmom ' , 'wb' ) as fp :
79
+ with open ('yesterday_set.pickle ' , 'wb' ) as fp :
82
80
pickle .dump (url_set , fp )
83
81
84
82
url_yesterday_set = get_yesterday_data ()
@@ -89,7 +87,6 @@ def dump_todays_data(url_set):
89
87
90
88
91
89
def update_package_dataset ():
92
-
93
90
importNames = []
94
91
conn = get_db_connection ()
95
92
cursor = conn .cursor ()
@@ -98,12 +95,12 @@ def update_package_dataset():
98
95
99
96
for package in packages :
100
97
package = package [0 ]
101
- # todo: add support for updating the list
102
98
do_we_care_boolean , versions_list = check_if_we_care (package )
103
99
if do_we_care_boolean :
104
100
for version in reversed (versions_list ):
105
101
version = version ["number" ]
106
- bob = cursor .execute ('SELECT * FROM importNames WHERE packageName = ? AND version = ?' , [package , version ]).fetchone ()
102
+ bob = cursor .execute ('SELECT * FROM importNames WHERE packageName = ? AND version = ?' ,
103
+ [package , version ]).fetchone ()
107
104
if bob is None :
108
105
try :
109
106
importNames = JohnnyDist (package + "==" + version ).import_names
0 commit comments