def getToken(self,username,password):
        url = "https://passport.bilibili.com/api/v3/oauth2/login"
        payload = {
            "seccode":"",
            "validate":"",
            "subid":1,
            "permission":"ALL",
            "username":username,
            "password":password,
            "captcha":"",
            "challenge":"",
            "cookies":config["Token"]["COOKIE"]
        }

        data = Curl().request_json("POST",url,headers=config["pcheaders"],data=payload)

        if data["code"] == 0:
            Log.info("账号登陆成功")
        else:
            Log.error("账号登陆失败"+"-"+data["message"])
    
        config["Token"]["ACCESS_TOKEN"] = data["data"]["token_info"]["access_token"]
        config["Token"]["REFRESH_TOKEN"] = data["data"]["token_info"]["refresh_token"]

        csrf,uid,cookie = arrange_cookie(data)
        config["Token"]["CSRF"] = csrf
        config["Token"]["UID"] = uid

        set_cookie(cookie)

        config.write()
Exemple #2
0
 def on_tab_box_switch_tab(self, widget, item):    
     try:
         config.set("listmanager", "source", item.title)
         config.write()
     except: pass    
     
     Dispatcher.emit("switch-browser", item, True)
Exemple #3
0
def save_config(req: HttpRequest):
    """
    Save config
    """

    import json

    global device
    resp = {}
    resp["success"] = True

    # get wifi credentials
    wifi_pwd = req.body["wifi"]["password"]
    wifi_ssid = req.body["wifi"]["ssid"]

    # switch wifi to STATION mode
    if wifi_pwd and wifi_ssid:
        with open("config.json", "w") as config:
            config.write(json.dumps(req.body))
    else:
        raise HttpError("No wifi credentials specified", 400)

    # set device in run mode
    log.info("Enabling run mode")
    device.enable_run_mode()

    # start timer to reboot device in 5 s
    log.info("Rebooting in 5 seconds...")
    timer = Timer(-1)
    cb = lambda _: device.reboot()
    timer.init(period=5000, mode=Timer.ONE_SHOT, callback=cb)

    return HttpResponse.ok(200, Http.MIME_TYPE["JSON"], body=resp)
Exemple #4
0
 def on_font_set(self, widget):
     print "on font set cb"
     print widget.get_font_name()
     self.font_info = widget.get_font_name()
     
     config.set("OSD","font", self.font_info)        
     config.write()
 def on_tab_box_switch_tab(self, widget, item):    
     try:
         config.set("listmanager", "source", item.title)
         config.write()
     except: pass    
     
     Dispatcher.emit("switch-browser", item, True)
 def __idle_quit(self, *args):    
     self.loginfo("Exiting...")
     Player.stop()
     self.mmkeys.release()
     self.playlist_ui.save_to_library()
     MediaDB.save()
     config.write()
     global_hotkeys.stop()
     self.window.destroy()        
     gtk.main_quit()
     self.loginfo("Exit successful.")
Exemple #7
0
 def on_background_set(self, widget):
     self.bg_color = widget.get_color()
     print "background color set to ", self.bg_color.to_string()
     print self.bg_color.red
     print self.bg_color.green
     print self.bg_color.blue
     
     config.set("OSD","background_red", self.bg_color.red)
     config.set("OSD","background_green", self.bg_color.green)
     config.set("OSD","background_blue", self.bg_color.blue)
     config.write()
Exemple #8
0
    def __idle_quit(self, *args):
        self.loginfo("Exiting...")
        Player.stop()
        self.mmkeys.release()
        Dispatcher.emit("being-quit")
        playlist_ui.save_to_library()
        MediaDB.save()
        WebcastDB.save()
        config.write()
        global_hotkeys.stop_bind()

        self.app_destroy()
        gtk.main_quit()
        self.loginfo("Exit successful.")
    def __idle_quit(self, *args):    
        self.loginfo("Exiting...")
        Player.stop()
        self.mmkeys.release()
        Dispatcher.emit("being-quit")
        playlist_ui.save_to_library()
        MediaDB.save()
        WebcastDB.save()
        config.write()
        global_hotkeys.stop_bind()

        self.app_destroy()
        gtk.main_quit()
        self.loginfo("Exit successful.")
Exemple #10
0
    def flush(cls, release_type, release_version):
        if release_type == None and release_version == None:
            settings = config.read()
            settings['first_run'] = True
            config.write(settings)
        if release_type != None:
            if release_version != None:
                release_info_dict = releases.getInfo(release_type, release_version)
                release_plist_name = utilities.createcachefilename(release_info_dict['prefix'], release_info_dict['version'])
                cached_file_path = utilities.getcachefile(release_plist_name)

                if os.path.exists(cached_file_path) == True:
                    logging_helper.getLogger().info('Removing version manifest ('+release_plist_name+')...')
                    manager.RemovePackageManifest(cached_file_path)
            else:
                type_versions = versions.get(release_type)
                for version in type_versions:
                    release_version_info = releases.getInfo(release_type, version)
                    cls.flush(release_type, release_version_info['name'])
        else:
            types = releases.get()
            for type_name in types:
                cls.flush(type_name, None)
Exemple #11
0
for exposure in range(exposure_low, exposure_high, increment):
    # Set new exposure
    newExposure = ueye.DOUBLE(exposure)
    ret = ueye.is_Exposure(cam.handle(), ueye.IS_EXPOSURE_CMD_SET_EXPOSURE,
                           newExposure, ueye.sizeof(newExposure))
    time.sleep(0.05)
    img = ImageFunctions.capture_image(cam=cam, gripper_height=500)
    puck_list = QR_Scanner(img)
    print(puck_list)
    # Checking exposure
    d = ueye.DOUBLE()
    retVal = ueye.is_Exposure(cam.handle(), ueye.IS_EXPOSURE_CMD_GET_EXPOSURE,
                              d, 8)
    if retVal == ueye.IS_SUCCESS:
        print('Currently set exposure time %8.3f ms' % d)
    # Position returns as None if no QR-code is found
    if puck_list:
        exposure_values.append(exposure)

exposure = str(median(exposure_values))

config = configparser.ConfigParser()
config.read('cam_adjustments.ini')
cfgfile = open('cam_adjustments.ini', 'w')

# Updating the value for exposure
config.set('EXPOSURE', 'exposure', exposure)

config.write(cfgfile)
cfgfile.close()
Exemple #12
0
    def __init__(self):
        self._timestamp = datetime.datetime.now().strftime("%Y-%m-%dT%H:%M:%S")
        self._args = self.argparser.parse_args()
        if self.protocol is None:
            step_list = self.steps
        elif self.args.help:
            step_list = []
            for i in range(0, len(self.protocol)):
                step_list = step_list + self.steps[i]
            tmp_set_list = {}
            step_list = [
                tmp_set_list.setdefault(step, step) for step in step_list
                if step not in tmp_set_list
            ]
        else:
            pos = 0
            for i in range(0, len(self.protocol)):
                if self.protocol[i] == self.args.type:
                    pos = i
            step_list = self.steps[pos]
        logging.basicConfig(level=getattr(logging, self.args.log.upper()))

        if self.args.help:
            print textwrap.dedent("""\
              [TOC]

              {pipeline_doc}

              Usage
              -----
              ```
              #!text

              {help}
              ```
              {step_doc}
            """).format(
                pipeline_doc=textwrap.dedent(self.__doc__ or ""),
                help=self.argparser.format_help(),
                overview=self.__doc__ or "",
                #step_doc="\n".join([str(idx + 1) + "- " + step.__name__ + "\n" + "-" * len(str(idx + 1) + "- " + step.__name__) + (textwrap.dedent(step.__doc__) if step.__doc__ else "") for idx, step in enumerate(step_list)])
                step_doc="\n".join([
                    step.__name__ + "\n" + "-" * len(step.__name__) +
                    (textwrap.dedent(step.__doc__) if step.__doc__ else "")
                    for step in step_list
                ]))
            self.argparser.exit()

        # Normal pipeline execution
        if self.args.config:
            config.parse_files(self.args.config)
        else:
            self.argparser.error("argument -c/--config is required!")

        # Create a config trace from merged config file values
        with open(self.__class__.__name__ + ".config.trace.ini",
                  'wb') as config_trace:
            config_trace.write(
                textwrap.dedent("""\
              # {self.__class__.__name__} Config Trace
              # Created on: {self.timestamp}
              # From:
              #   {config_files}
              # DO NOT EDIT THIS AUTOMATICALLY GENERATED FILE - edit the master config files

            """).format(config_files="\n#   ".join(
                    [config_file.name for config_file in self.args.config]),
                        self=self))
            config.write(config_trace)
            config.filepath = os.path.abspath(config_trace.name)

        self._output_dir = os.path.abspath(self.args.output_dir)
        self._scheduler = create_scheduler(self.args.job_scheduler,
                                           self.args.config)

        step_counter = collections.Counter(step_list)
        duplicated_steps = [
            step.__name__ for step in step_counter if step_counter[step] > 1
        ]
        if duplicated_steps:
            raise Exception("Error: pipeline contains duplicated steps: " +
                            ", ".join(duplicated_steps) + "!")
        else:
            self._step_list = [Step(step) for step in step_list]

        if self.args.steps:
            if re.search("^\d+([,-]\d+)*$", self.args.steps):
                self._step_range = [
                    self.step_list[i - 1] for i in parse_range(self.args.steps)
                ]
            else:
                raise Exception("Error: step range \"" + self.args.steps +
                                "\" is invalid (should match \d+([,-]\d+)*)!")
        else:
            self.argparser.error("argument -s/--steps is required!")

        self._sample_list = []
        self._sample_paths = []

        # For job reporting, all jobs must be created first, no matter whether they are up to date or not
        if self.args.report:
            self._force_jobs = True
            self.create_jobs()
            self.report_jobs()
        # For job cleaning, all jobs must be created first, no matter whether they are up to date or not
        elif self.args.clean:
            self._force_jobs = True
            self.create_jobs()
            self.clean_jobs()
        else:
            self._force_jobs = self.args.force
            self.create_jobs()
            self.submit_jobs()