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_crawler.FetcherType.FetcherType Class Reference
Inheritance diagram for dc_crawler.FetcherType.FetcherType:
Collaboration diagram for dc_crawler.FetcherType.FetcherType:

Static Public Member Functions

def getFromProperty (propertyValue, siteUrl, logger=None)
 Check the fetcher type by FETCHER_TYPE project property. More...
 

Detailed Description

Definition at line 21 of file FetcherType.py.

Member Function Documentation

◆ getFromProperty()

def dc_crawler.FetcherType.FetcherType.getFromProperty (   propertyValue,
  siteUrl,
  logger = None 
)
static

Check the fetcher type by FETCHER_TYPE project property.

Parameters
urlObj- url request object
propertyValue- json string with pattern rules
siteUrl- site URL string with pattern rules. Only for debug purpose
logger- instance of logger for log if necessary
isExtendLog- boolean flag for allowed extend logging if True or only error message otherwise
Returns
extracted fetcher type

Definition at line 32 of file FetcherType.py.

32  def getFromProperty(propertyValue, siteUrl, logger=None):
33  #isExtendLog = False
34  if logger is not None:
35  logger.debug(siteUrl + ', FETCHER_TYPE: ' + propertyValue)
36 
37  fetchType = None
38  try:
39  fetcherProperties = json.loads(propertyValue)
40  for pattern in fetcherProperties:
41  match = re.search(pattern, siteUrl)
42  if match:
43  fetchType = fetcherProperties[pattern]
44  # if fetchType in BaseFetcher.fetchers:
45  if fetchType == BaseFetcher.TYP_DYNAMIC or fetchType == BaseFetcher.TYP_NORMAL:
46  if logger is not None:
47  logger.info(siteUrl + ', Fetch Type value: ' + str(fetchType))
48  else:
49  logger.debug(siteUrl + ', wrong Fetch Type number: ' + str(fetchType))
50  fetchType = None
51  continue
52  break
53  except Exception, ex:
54  if logger is not None:
55  logger.debug("Fetcher Type Exception: " + str(ex))
56  return fetchType
57 

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