def run(self, edit, event, operationId, params={}, action=""):

      self.x = int(event["x"])
      self.y = int(event["y"])

      self.selectedTextPoint = self.view.window_to_text((self.x, self.y))
      self.selectedWordRegions = self.view.word(self.selectedTextPoint)
      self.selectedWord = self.view.substr(self.selectedWordRegions)

      self.swaggerAPI = environment.getSwaggerAPI()

      if self.swaggerAPI == None:
         return

      if operationId == None or operationId == "":
         helpers.log_error("'operationId' not provided")
         return

      self.operationId = operationId
      self.setOperationFromId()

      self.parameters = params
      self.action = action

      # Start parsing parameters
      self.expandParams()
Exemple #2
0
def get(url):
    try:
        raw = requests.get(url)
        return raw.json()
    except Exception as e:
        log_error(e)
        return False
Exemple #3
0
async def scrap_comments(session, subreddit, apis, keywords):
    try:
        subreddit_dict = helpers.parse_reddit_url(subreddit)
        if not subreddit_dict:
            return []
        reddit_api_response = await helpers.fetch(
            session, "https://www.reddit.com/r/{}/comments/{}.json?".format(
                subreddit_dict["sub-reddit"], subreddit_dict["id"]))
        if reddit_api_response == "Error":
            return []
        json_dict = json.loads(reddit_api_response)

        results = []
        for data in json_dict:
            for children in data["data"]["children"]:
                fields = helpers.has_keyword(children["data"],
                                             ["title", "body", "selftext"],
                                             keywords)
                if fields:
                    saved_data = {}
                    for field in fields:
                        saved_data[field] = children["data"][field]
                    saved_data["_id"] = children["data"]["id"]
                    saved_data["permalink"] = children["data"]["permalink"]
                    saved_data["ups"] = children["data"]["ups"]
                    saved_data["downs"] = children["data"]["downs"]
                    saved_data["score"] = children["data"]["score"]
                    saved_data["author"] = children["data"]["author"]
                    saved_data["created_utc"] = children["data"]["created_utc"]
                    saved_data["fields"] = fields
                    results.append(saved_data)
        return results
    except Exception as e:
        helpers.log_error("Error: {}/nArgs: {}".format(str(e), e.args))
        return "Error"
 def executeOperation(self):
    try:
       if self.operation != None:
          if 'dummy' in self.parameters:
             del self.parameters['dummy']
          kwargs = self.parameters
          self.opresult = self.operation(**kwargs).result()
    except bravado.exception.HTTPError as e:
       self.opresult = None
       helpers.log_error(e)
   def setOperationFromId(self):
      # We expect operationId to be the one specified in swagger documentation
      # e.g.: ModuleDefAPI_Get
      moduleName = self.operationId.split('_')[0]
      module = getattr(self.swaggerAPI, moduleName)
      if module == None:
         helpers.log_error("Module '" + moduleName + "' not found, deduced from '" + self.operationId + "'. [" + __name__ + ": " + type(self).__name__ + "." + sys._getframe().f_code.co_name + "]")

      self.operation = getattr(module, self.operationId)
      if self.operation == None:
         helpers.log_error("Operation '" + self.operationId + "' not found. [" + __name__ + ": " + type(self).__name__ + "." + sys._getframe().f_code.co_name + "]")
   def run(self, operationId, params={}, action=""):
      self.swaggerAPI = environment.getSwaggerAPI()
      if self.swaggerAPI == None:
         return

      if operationId == None or operationId == "":
         helpers.log_error("'operationId' not provided")
         return

      self.operationId = operationId
      self.setOperationFromId()

      self.parameters = params
      self.action = action

      # Start parsing parameters
      self.expandParams()
Exemple #7
0
def send_message(message, subject):
    try:
        send_notification(message, subject)
    except Exception as e:
        log_error(e)