Best Python code snippet using uiautomator
autocontroller.py
Source:autocontroller.py
1from webrecorder.basecontroller import BaseController2from webrecorder.models.auto import Auto3from bottle import request, response4import requests5import os6from webrecorder.apiutils import wr_api_spec7# ============================================================================8class AutoController(BaseController):9 def init_routes(self):10 wr_api_spec.set_curr_tag('Automation')11 # CREATE AUTO12 @self.app.post('/api/v1/auto')13 def create_auto():14 user, collection = self.load_user_coll()15 autoid = collection.create_auto(request.json)16 return {'auto': autoid}17 # QUEUE URLS18 @self.app.post('/api/v1/auto/<autoid>/queue_urls')19 def add_urls(autoid):20 user, collection, auto = self.load_user_coll_auto(autoid)21 data = request.json or {}22 return auto.queue_urls(data.get('urls'))23 # START24 @self.app.post('/api/v1/auto/<autoid>/start')25 def add_urls(autoid):26 user, collection, auto = self.load_user_coll_auto(autoid)27 data = request.json or {}28 return auto.start(timeout=data.get('timeout', 0),29 headless=data.get('headless', False),30 screenshot_uri=data.get('screenshot_uri'))31 # STOP32 @self.app.post('/api/v1/auto/<autoid>/stop')33 def add_urls(autoid):34 user, collection, auto = self.load_user_coll_auto(autoid)35 return auto.stop()36 # GET AUTO37 @self.app.get('/api/v1/auto/<autoid>')38 def get_auto(autoid):39 user, collection, auto = self.load_user_coll_auto(autoid)40 return {'auto': auto.serialize()}41 # GET AUTO IS DONE42 @self.app.get('/api/v1/auto/<autoid>/done')43 def get_auto_done(autoid):44 user, collection, auto = self.load_user_coll_auto(autoid)45 return {'done': auto.is_done()}46 # DELETE AUTO47 @self.app.delete('/api/v1/auto/<autoid>')48 def delete_auto(autoid):49 user, collection, auto = self.load_user_coll_auto(autoid)50 auto.delete_me()51 return {'deleted_id': auto.my_id}52 wr_api_spec.set_curr_tag(None)53 def load_user_coll_auto(self, autoid, user=None, coll_name=None):54 user, collection = self.load_user_coll(user=user, coll_name=coll_name)55 self.require_admin_beta_access(collection)56 return user, collection, self.load_auto(collection, autoid)57 def load_auto(self, collection, autoid):58 auto = collection.get_auto(autoid)59 if not auto:60 self._raise_error(404, 'Automation not found', api=True,61 id=autoid)...
get_thumbs.py
Source:get_thumbs.py
...27 'cache': -1,28 })29 url = "http://webthumb.bluga.net/easythumb.php?%s" % params30 31 os.system('wget -q "%s" -O %s' % (url, site.screenshot_uri()))32 attempt = 133 while os.path.getsize(site.screenshot_uri()) < 400 and attempt < 3:34 time.sleep(7)35 os.system('wget -q "%s" -O %s' % (url, site.screenshot_uri()))36 attempt += 137 params = urlencode({38 'user': 325,39 'url': site.url,40 'hash': hash,41 'size': 'large',42 'cache': -1,43 })44 url = "http://webthumb.bluga.net/easythumb.php?%s" % params45 46 os.system('wget -q "%s" -O %s' % (url, site.largescreenshot_uri()))47 attempt = 148 while os.path.getsize(site.largescreenshot_uri()) < 400 and attempt < 3:49 time.sleep(7)50 os.system('wget -q "%s" -O %s' % (url, site.largescreenshot_uri()))51 attempt += 152 if os.path.getsize(site.screenshot_uri()) < 600 and attempt >= 3:53 failure.append('%s: %s' % (site.id, site.url))54 else:55 site.screenshot = 'ok'56 site.redo_screenshot = False57 site.save()58if len(failure) > 0:59 print "Failures on: "...
Learn to execute automation testing from scratch with LambdaTest Learning Hub. Right from setting up the prerequisites to run your first automation test, to following best practices and diving deeper into advanced test scenarios. LambdaTest Learning Hubs compile a list of step-by-step guides to help you be proficient with different test automation frameworks i.e. Selenium, Cypress, TestNG etc.
You could also refer to video tutorials over LambdaTest YouTube channel to get step by step demonstration from industry experts.
Get 100 minutes of automation test minutes FREE!!