#輸入keyword_list ads_keywordsV2 ontology
#輸出ads_vectorV2
import math
import dbtool as db
class MyData(list):
def __init__(self, *args, **kwargs):
self.word = kwargs.pop('word', None)
super(MyData, self).__init__(*args, **kwargs)
def __repr__(self):
return str(self[:]) if self.word is None else self.word
def getData(link, string=''):
sql = "SELECT wiki_ID,list_id FROM keyword_list WHERE word = '%s' "
sql = sql%(string)
res = db.execute_sql(link, sql)#執行sql指令
row = res.fetchone()
return eval(row[0])
def ontology(link, category_id=0):
sql = "SELECT id,word FROM ontology WHERE category_id = %d ORDER BY id ASC"
sql = sql%(category_id)
res = db.execute_sql(link,sql)#執行sql指令
rw = res.fetchone()
category_array = []
while rw is not None:
category_array.append(MyData(word=rw[1])) # create `MyData` with `word` only
rw = res.fetchone()
return category_array
if __name__ == '__main__':
link = db.create_connection('adsontology')
category = []
for i in range(6):
category.append(ontology(link, i))
# All elements in category[i] is `MyData` now, and it is also a list.
for mydata in category[i]:
# So we can assign value to it directly.
mydata = getData(link, mydata.word)
print(category)
sql = "SELECT id,word,ads_id FROM ads_keywordsV2 ORDER BY id ASC"
result = db.execute_sql(link,sql)#執行sql指令
row = result.fetchone()
while row is not None:
#keywords_array = list(link,row[1])
#print(keywords_array)
row = result.fetchone()
#break