HCE Project Python language Distributed Tasks Manager Application, Distributed Crawler Application and client API bindings.  2.0.0-chaika
Hierarchical Cluster Engine Python language binding
dc_db.URLVerifyTask.URLVerifyTask Class Reference
Inheritance diagram for dc_db.URLVerifyTask.URLVerifyTask:
Collaboration diagram for dc_db.URLVerifyTask.URLVerifyTask:

Public Member Functions

def process (self, urlVerifies, queryCallback, bdResolveFunc)
 
def fetchUrl (self, urlVerify, queryCallback, bdResolveFunc)
 
- Public Member Functions inherited from dc_db.BaseTask.BaseTask
def isSiteExist (self, siteId, queryCallback, userId=None)
 
def generateCriterionSQL (self, criterions, additionWhere=None, siteId=None)
 
def fetchByCriterions (self, criterions, queryCallback)
 
def dbLock (self, mutexName, queryCallback, sleepTime=1, mutexLockTTL=Constants.DEFAULT_LOCK_TTL)
 
def dbUnlock (self, mutexName, queryCallback)
 
def createUrlsInsertQuery (self, siteId, localKeys, localValues)
 
def copyUrlsToDcUrls (self, siteId, queryCallback)
 
def statisticLogUpdate (self, localObj, urlMd5, siteId, status, queryCallback, isInsert=False)
 
def calculateMd5FormUrl (self, url, urlType, useNormilize=False)
 

Additional Inherited Members

- Static Public Member Functions inherited from dc_db.BaseTask.BaseTask
def readValueFromSiteProp (siteId, propName, queryCallback, urlMd5=None)
 

Detailed Description

Definition at line 20 of file URLVerifyTask.py.

Member Function Documentation

◆ fetchUrl()

def dc_db.URLVerifyTask.URLVerifyTask.fetchUrl (   self,
  urlVerify,
  queryCallback,
  bdResolveFunc 
)

Definition at line 42 of file URLVerifyTask.py.

42  def fetchUrl(self, urlVerify, queryCallback, bdResolveFunc):
43  url = None
44  if urlVerify.dbName is not None:
45  dbIndex = bdResolveFunc(urlVerify.dbName)
46  if dbIndex is not None:
47  tableName = Constants.DC_URLS_TABLE_NAME_TEMPLATE % urlVerify.siteId
48  query = Constants.SELECT_SQL_TEMPLATE_SIMPLE % ("*", tableName)
49  if urlVerify.urlType == dc.EventObjects.URLStatus.URL_TYPE_URL:
50  localUrlMd5 = hashlib.md5(urlVerify.url).hexdigest()
51  else:
52  localUrlMd5 = urlVerify.url
53  additionWere = ("`UrlMd5`= '%s'" % localUrlMd5)
54  if urlVerify.criterions is not None:
55  additionQueryStr = self.generateCriterionSQL(urlVerify.criterions, additionWere)
56  else:
57  additionQueryStr = self.generateCriterionSQL({}, additionWere)
58  if additionQueryStr is not None and len(additionQueryStr) > 0:
59  query += " "
60  query += additionQueryStr
61  res = queryCallback(query, dbIndex, Constants.EXEC_NAME)
62  if res is not None and len(res) > 0:
63  url = URLFetchTask.fillUrlObj(res[0])
64  else:
65  logger.error("Error: there isn't %s database connection", str(url.dbName))
66  return url
67 
Here is the call graph for this function:
Here is the caller graph for this function:

◆ process()

def dc_db.URLVerifyTask.URLVerifyTask.process (   self,
  urlVerifies,
  queryCallback,
  bdResolveFunc 
)

Definition at line 29 of file URLVerifyTask.py.

29  def process(self, urlVerifies, queryCallback, bdResolveFunc):
30  urls = []
31  for urlVerify in urlVerifies:
32  urls.append(self.fetchUrl(urlVerify, queryCallback, bdResolveFunc))
33  return urls
34 
35 
Here is the call graph for this function:
Here is the caller graph for this function:

The documentation for this class was generated from the following file: