def zone_leaf(self, word, wwn, fid = -1): """ return the info for a specified leaf in the module brocade-fabric-switch yang file """ try: s = get_tasks(word, self.ip, wwn, self.Auth , "zoning", fid ) #print("fs_leaf_debug___"*10) #print(s.text) #print("fs_leaf_end_____"*10) doc = untangle.parse(s.text) #print("fs_leaf_debug___"*10) #print(doc) #print("fs_leaf_end_____"*10) done = "none" if "vf-id" == word: done = doc.Response.fabric_switch.vf_id.cdata if "wwn" == word: done = doc.Response.fabric_switch.name.cdata if "switch-user-friendly-name" == word: done = doc.Response.fabric_switch.switch_user_friendly_name.cdata if "chassis-wwn" == word: done = doc.Response.fabric_switch.chassis_wwn.cdata if "chassis-user-friendly-name" == word: done = doc.Response.fabric_switch.chassis_user_friendly_name.cdata if "domain-id" == word: done = doc.Response.fabric_switch.domain_id.cdata if "principal" == word: done = doc.Response.fabric_switch.principal.cdata if "fcid" == word: done = doc.Response.fabric_switch.fcid.cdata if "ip-address" == word: done = doc.Response.fabric_switch.ip_address.cdata if "fcip-address" == word: done = doc.Response.fabric_switch.fcip_address.cdata if "ipv6-address" == word: done = doc.Response.fabric_switch.ipv6_address.cdata if "firmware-version" == word: done = doc.Response.fabric_switch.firmware_version.cdata if done == "none": pass print("\n\nError in fs_leaf the command requested is not one of the\ \ncommand requested was %s \ \n\nthe list of valid commands is \ndomain-id\nchassis-wwn\ \nswitch-user-friendly-name\nprincipal\nfcid\nip-address\ \nfcip-address\nipv6-address\nfirmware-version\n\n" % word) except AttributeError: print("Error during untangle - None was returned") done = "Untangle Error" except: print("Error in untagle" , sys.exc_info()[0] ) print("fs_leaf") done = "Untangle Error" return(done)
def tweet_uyd(api): if path.isfile(last_epfile): last_ep = datetime.strptime(open(last_epfile, 'r').read(), '%a, %d %b %Y %H:%M:%S +0000') else: last_ep = datetime.strptime('Fri, 15 Jul 2016 19:51:00 +0000', '%a, %d %b %Y %H:%M:%S +0000') #req = requests.get('http://uhhyeahdude.com/podcast/') #feed = xml.etree.ElementTree.parse(req.content).getroot() feed = untangle.parse('http://uhhyeahdude.com/podcast/') eps = feed.rss.channel.item new_eps = [] for ep in eps: pubdate = datetime.strptime(ep.pubDate.cdata, '%a, %d %b %Y %H:%M:%S +0000') if pubdate > last_ep: new_eps.append(ep) last_ep = pubdate if new_eps == []: #print 'No new eps' return #pickle.dump(last_ep, open(last_epfile, 'w')) open(last_epfile, 'w').write(last_ep.strftime('%a, %d %b %Y %H:%M:%S +0000')) for ep in reversed(new_eps): desc = ep.description.cdata desc = desc.replace('\n', ' ').replace('\t', ' ') words = desc.split(' ') if set(['intro:', 'outro:', 'http://uhhyeahdude.com']).issubset(set(words)): intro = ' '.join(words[words.index('intro:')+1:words.index('outro:')-1]) intro_url = youtube_search.search(intro) api.PostUpdate('{0} intro: {1} {2}'.format(ep.title.cdata, intro, intro_url)) outro = ' '.join(words[words.index('outro:')+1:words.index('http://uhhyeahdude.com')]) outro_url = youtube_search.search(outro) api.PostUpdate('{0} outro: {1} {2}'.format(ep.title.cdata, outro, outro_url))
def update_resource(subscription_id, cloud_service_name, resource_type, resource_name): message = untangle.parse(request.data) subscription = Subscription.query.filter_by(id=subscription_id).first() cloud_service = CloudService.query.filter_by(name=cloud_service_name,subscription_id=subscription_id).first() if not subscription: app.logger.debug("Can't update subscription ID %s because it was not found" % subscription_id) abort(404) if not cloud_service: app.logger.debug("Can't update cloud service ID %s because it was not found" % cloudservice_id) abort(404) resource = Resource.query.filter_by(name=resource_name, cloudservice_id=cloud_service_name).first() resource.name = resource_name resource.cloudservice_id = cloud_service.id resource.resource_type = resource_type resource.schema_version = message.Resource.SchemaVersion.cdata resource.plan = message.Resource.Plan.cdata resource.version = message.Resource.SchemaVersion.cdata try: resource.promo_code = message.Resource.PromotionCode except IndexError: app.logger.debug("Promotion code not found") resource.incarnation_id = message.Resource.ETag.cdata app.logger.debug("Saving resource %s" % resource_name) db.session.add(resource) db.session.commit() response_body = resource.to_xml() app.logger.debug(response_body) return Response(response_body, status=200, mimetype='text/xml')
def get_forestfireindex(self): headers = {'user-agent': user_agent} r = requests.get(api_url, headers=headers) u = untangle.parse(r.text) periods = u.weatherdata.product.time collection = ForestFireCollection(url=api_url) collection.save() for period in periods: time_from = period['from'] time_to = period['to'] for location in period.location: county = location['county'] name = location['name'] stationid = location['stationid'] ws, ws_created = WeatherStation.objects.get_or_create(stationid=stationid, name=name, county=county) if ws_created: self.get_wsinfo(ws) for ff in location.forest_fire: if ff['unit'] == 'danger-index': dangerindex = ff['value'] ffi = ForestFireIndex(collection=collection, time_to=time_to, time_from=time_from, weatherstation=ws, dangerindex=dangerindex) ffi.save() collection.done = True collection.save()
def index(request): search_query = None if request.method == 'POST': search_form = RecipeSearchForm(request.POST) else: search_form = RecipeSearchForm() table_data = [] recipes = get_recipes(search_form.data.get('query')) if recipes: document = untangle.parse(recipes) if int(document.recipes['total']) > 0: for recipe in document.recipes.recipe: pk = 0 if hasattr(recipe, 'pk'): pk = recipe.pk.cdata table_data.append({'name': recipe.name.cdata, 'pk': pk}) return render(request, 'recipes/index.html', {'table': RecipeTable(table_data), 'search_form': search_form})
def parse_xml(filename): contents= "" with open(filename, "r") as f: contents = f.readlines() #print "i read the xml file, here are its contents:\n\n" #print contents root = untangle.parse(filename) return_dict = {} player1 = root.items.pName1.cdata player2 = root.items.pName2.cdata main_title = root.items.eventTitle.cdata titleL = root.items.rOundl.cdata titleR = root.items.rOundr.cdata #print "p1" + player1 + "p2" + player2 + "titleL" + titleL + "titleR" + titleR + "main" + main_title # figure out what game we're in right now game_keywords = MELEE_KEYWORDS vod_title = main_title + ": " + titleL + " - " + titleR + ": ", player1 + " vs. " + player2 final_title = "".join(vod_title) if len(final_title) > 95: final_title = final_title[:95] return_dict['title'] = final_title print "going to upload with the title:" + return_dict['title'] return_dict['description'] = "VOD from" + main_title + " created by khz's auto vod uploader" return_dict['keywords'] = SMASH_KEYWORDS + NEBS_KEYWORDS + game_keywords return_dict['category'] = "20" # this is the US category for gaming return_dict['privacyStatus'] = "public" #XXX: change this later return return_dict
def NYC_outage_fraction (): print 'Getting the data from : http://www.grandcentral.org/developers/data/nyct/nyct_ene.xml' f=urllib.urlopen('http://www.grandcentral.org/developers/data/nyct/nyct_ene.xml') print 'Data collection is done' raw_data=f.read() print 'Parsing the data' raw_data_parse=untangle.parse(raw_data) raw_data_parse.get_elements() print 'Filtering the outage data' outages = raw_data_parse.NYCOutages.outage global total total=len(outages) print 'Total nr. of escalators ' +str(total) global repair repair = 0 for outage in outages: outage.get_elements() reason=outage.reason.cdata if reason == 'REPAIR': repair=+1 else: continue print 'Nr. of escalators need repair ' + str(repair) global frac frac=repair/total*100 print 'This is' +str(frac)+'% of the total escalators'
def download_article_html(name, only_count=False, total=-1): rss_archive = os.path.join(DEFAULT_SAVE_PATH, name, 'rss_archive') article_archive = os.path.join(DEFAULT_SAVE_PATH, name, 'raw_articles') mkdir_p(article_archive) count = 0 for rss in glob.glob(rss_archive+'/*.xml'): obj = untangle.parse(rss) if count > 1: break for item in obj.rss.channel.item: guid = item.guid.cdata title = item.title.cdata try: orig_link = item.feedburner_origLink except IndexError as e: logging.error(e) break link = "http://web.archive.org/web/{0}".format(orig_link) h = hashlib.sha224(guid).hexdigest() f = os.path.join(article_archive, h+'.html') if os.path.exists(f): continue count += 1 if only_count: continue print(u'Downloading {0}/{1}: {2}'.format(count, total, title)) resp = requests.get(link) if resp.status_code == 200: with open(f, 'w') as fp: fp.write(resp.text) return count
def test(): query = request.args.get("q") result = [] result_map = [] url = "http://mercury-ops2.ornl.gov/usgssolr4/core1/select/" param2 = 'geo:"intersects(' + query + ')"' param3 = "*:*" payload = {"fq": param2, "q": param3, "start": 0, "rows": 1000} r = requests.get(url, params=payload) # faz o parsing do XML obj = untangle.parse(r.content) for doc in obj.response.result.doc: missing_bboxinfo = doc.str[7].cdata # Does not the file contain bounding box info? if unicode.lower(missing_bboxinfo) == "false": projid = doc.str[0].cdata # id nbc = float(doc.float[0].cdata) # northBoundCoord //latitude sbc = float(doc.float[1].cdata) # southBoundCoord //latitude ebc = float(doc.float[2].cdata) # eastBoundCoord //longitude wbc = float(doc.float[3].cdata) # westBoundCoord //longitude title = doc.str[12].cdata author = doc.arr[16].cdata abstract = doc.str[11].cdata update_data = doc.str[0].cdata network_url = doc.arr[9].cdata data_url = doc.arr[10].cdata ## obtain the centroid (based on http://gis.stackexchange.com/questions/64119/center-of-a-bounding-box_ coords = (wbc, ebc, sbc, nbc) centerx, centery = (numpy.average(coords[:2]), numpy.average(coords[2:])) db.create_all() projectitr = Project( projid, nbc, sbc, ebc, wbc, centerx, centery, title, author, abstract, update_data, network_url, data_url, ) db.session.add(projectitr) db.session.commit() # result_map.append({"properties": {"id": projid}, "geometry": Point((centery, centerx))}) result_map.append({"properties": {"id": id}, "geometry": Point((centery, centerx))}) print json.dumps(result_map) return json.dumps(result_map)
def sync_table(self, season, league, league_ssha_id, game_type): url = "%s/tabelle.aspx" % self.WS_URL params = { "typ": "liga", "id": league_ssha_id } self._logger.info("Fetching table for league %s" % (league_ssha_id, )) response = self._call_webservice(url, params) xml_table = untangle.parse(response.content) try: for xml in xml_table.ihs.Mannschaften.Mannschaft: try: team = self._get_team(xml.Team.cdata) except Club.DoesNotExist: continue table = get_object_or_None(Table, team=team, season=season, league=league, game_type=game_type) if table is None: table = Table(team=team, season=season, league=league, game_type=game_type) table.position = int(xml.Rang.cdata) table.gp = int(xml.Spiele.cdata) table.win = int(xml.Siege.cdata) table.loss = int(xml.Niederlagen.cdata) table.tie = int(xml.Remis.cdata) table.diff = xml.Tore.cdata table.points = int(xml.Punkte.cdata) table.save() except IndexError: self._logger.debug("No table entries found!")
def populate_metadata(apps, schema_editor): Extension = apps.get_model("studies", "Extension") for extension in Extension.objects.all(): with default_storage.open(extension.xpi.name) as f: with zipfile.ZipFile(f) as zf: files = set(zf.namelist()) if "manifest.json" in files: with zf.open("manifest.json") as manifest_file: data = json.load(manifest_file) extension.extension_id = ( data.get("applications", {}).get("gecko", {}).get("id", None) ) extension.version = data.get("version") elif "install.rdf" in files: extension.is_legacy = True with zf.open("install.rdf", "r") as rdf_file: data = untangle.parse(rdf_file.read().decode()) extension.extension_id = data.RDF.Description.em_id.cdata extension.version = data.RDF.Description.em_version.cdata else: raise Exception("Invalid XPI.") if not extension.extension_id or not extension.version: raise Exception("Extension ID or version not set.") f.seek(0) extension.hash = hashlib.sha256(f.read()).hexdigest() extension.save()
def doSearch(self, searchstring): print("doSearch") # Clear the previous results self.resetResults() # Make the request url = "http://search.student.utwente.nl/api/search" params = {"q": searchstring, "n": 500} result = requests.get(url, params=params) if result.status_code == requests.codes.ok: parsed_xml = untangle.parse(result.text) # list of results try: results = parsed_xml.campus_search.result except IndexError: return # Add the results for result in results: if result.type.cdata == "file": self.addResultItem(result.name.cdata, result.full_path.cdata, result.netbios_name.cdata) # Make the results show up self.scrollwindow.show_all() else: print("Error: sending request to campussearch failed")
def __init__(self, path='', source = 'text', words=[]): if len(words) == 0: self.words = [] if source == 'umarker': #xml from uncertaintymaker code import untangle template = untangle.parse(path) for word in template.transcription.words: if not word.word.cdata in ["[sil]", "[NOISE]", "[SPEECH]"]: self.words.append(Word(word.word.cdata, word.timeStart.cdata, word.timeEnd.cdata)) elif source == 'ldc-wrd': wrd_file = open(path, 'r') for line in wrd_file: elements = line.split(' ') word = elements[2].rstrip() time_from = self.convert_time(elements[0], from_time='ldc', to_time='ms') time_to = self.convert_time(elements[1], from_time='ldc', to_time='ms') self.words.append(Word(word, time_from, time_to)) wrd_file.close() elif source == 'wrd': wrd_file = open(path, 'r') for line in wrd_file: elements = line.split(' ') word = elements[2].rstrip() time_from = elements[0] time_to = elements[1] self.words.append(Word(word, time_from, time_to)) wrd_file.close() elif source == 'text': path = path.encode('ascii', 'ignore') for word in word_tokenize(path): if not word in ['"', "'", ".", "!", '``', '`', "''", '""']: self.words.append(Word(word, '', '')) else: self.words = words
def wait_for_message(self, accept_message, unquote_msg=True, expect_xml=True, timeout=None): if isinstance(accept_message, (str, int)): msg_starts_with = '%s\t' % (accept_message,) def accept_message(msg): return msg.startswith(msg_starts_with) import untangle from io import StringIO prev = None while True: last = self.get_next_message('wait_for_message', timeout=timeout) if unquote_msg: last = unquote_plus(unquote_plus(last)) if accept_message(last): if expect_xml: # Extract xml and return untangled. try: xml = last[last.index('<xml>'):] if isinstance(xml, bytes): xml = xml.decode('utf-8') xml = untangle.parse(StringIO(xml)) except: traceback.print_exc() raise AssertionError('Unable to parse:\n%s\nxml:\n%s' % (last, xml)) ret = xml.xml ret.original_xml = last return ret else: return last if prev != last: print('Ignored message: %r' % (last,)) prev = last
def access(): """ Shows basic attribute access and node navigation. """ o = untangle.parse('<node id="5">This is cdata<subnode value="abc"/></node>') return ("Node id = %s, subnode value = %s" % (o.node['id'], o.node.subnode['value']))
def test_python_keyword(self): o = untangle.parse("<class><return/><pass/><None/></class>") self.assert_(o is not None) self.assert_(o.class_ is not None) self.assert_(o.class_.return_ is not None) self.assert_(o.class_.pass_ is not None) self.assert_(o.class_.None_ is not None)
def create_mapping(domain_uid): res_mapping = {} xml_map = untangle.parse(ECOD_PDB_RES_MAP_URL % (domain_uid ,domain_uid)) # TODO: # Mapping can be to the same chain but skip a few residues. # In this case a new match needs to be created! # See for example: http://prodata.swmed.edu/ecod/complete/domain/e3pymA2, http://prodata.swmed.edu/ecod/data/000147122/000147122.residues.xml # The mapping is split at resdiue 149 to 323 :-( for residue in xml_map.domain_residue_doc.residue_list.residue: chain_id = residue['chain_id'] seq_id = int(residue['seq_id']) if residue['chain_id'] in res_mapping: if seq_id < res_mapping[chain_id]['seq_start']: res_mapping[chain_id]['seq_start'] = seq_id res_mapping[chain_id]['pdbresnum_start'] = residue['pdb_resnum'] elif seq_id > res_mapping[chain_id]['seq_end']: res_mapping[chain_id]['seq_end'] = seq_id res_mapping[chain_id]['pdbresnum_end'] = residue['pdb_resnum'] else: res_mapping[chain_id] = {} res_mapping[chain_id]['seq_start'] = seq_id res_mapping[chain_id]['pdbresnum_start'] = residue['pdb_resnum'] res_mapping[chain_id]['seq_end'] = seq_id res_mapping[chain_id]['pdbresnum_end'] = residue['pdb_resnum'] return res_mapping
def _url(id3tag): """Get the lyric's URL by calling the API Extract song and artist frames from the id3tag and then call the lyrics.wikia.com api for the URL of the actual lyric. Args: id3tag (ID3): id3-tag of the song Returns: string: lyric URL if successful, None otherwise """ try: # Get artist and song from tag artist = id3tag['TPE1'].text[0].encode('utf8') song = id3tag['TIT2'].text[0].encode('utf8') # Build request params = {'artist':artist, 'song':song, 'fmt':'xml'} request = 'http://lyrics.wikia.com/api.php?' + urllib.urlencode(params) # Do request response = untangle.parse(request) if response.LyricsResult.lyrics.cdata == 'Not found': return None return urllib.unquote(response.LyricsResult.url.cdata) except Exception: return None
def test_attribute_protocol(self): o = untangle.parse(''' <root> <child name="child1"> <subchild name="sub1"/> </child> <child name="child2"/> <child name="child3"> <subchild name="sub2"/> <subchild name="sub3"/> </child> </root> ''') try: self.assertEquals(None, o.root.child.inexistent) self.fail('Was able to access inexistent child as None') except AttributeError: pass # this is the expected error except IndexError: self.fail('Caught IndexError quen expecting AttributeError') self.assertTrue(hasattr(o.root, 'child')) self.assertFalse(hasattr(o.root, 'inexistent')) self.assertEqual('child1', getattr(o.root, 'child')[0]['name'])
def get_steamids( group_name , page_number = 1): obj = 0 while True: try: url = 'http://steamcommunity.com/groups/' + str(group_name) + '/memberslistxml/?xml=1&p=' + str(page_number) obj = untangle.parse(url) except: pass if str(obj) != '0': break try: string_obj = str(obj.memberList.members.steamID64) except: return [] string_obj = string_obj.split(' ') steamids = [] for item in string_obj: if '7656' in item: steamids.append(item[0:17]) return steamids
def test_multiple_children(self): """ Regular case of iteration. """ o = untangle.parse("<a><b/><b/></a>") cnt = 0 for i in o.a.b: cnt += 1 self.assertEquals(2, cnt)
def get_youtube_data(video): """ Helper to extract video and thumbnail from youtube """ video.source = 'youtube' if 'youtube.com/watch' in video.url: parsed = urlsplit(video.url) query = parse_qs(parsed.query) try: video.key = query.get('v')[0] except IndexError: video.key = None else: video.key = video.url.rsplit('/', 1)[1] video.embed_src = 'http://www.youtube.com/embed/' # api docs # http://gdata.youtube.com/feeds/api/videos/hNRHHRjep3E # https://www.googleapis.com/youtube/v3/videos?id=hNRHHRjep3E&part=snippet,contentDetails,statistics api_url = 'http://gdata.youtube.com/feeds/api/videos/{}'.format(video.key) video_data = urlopen(api_url).read() xml = untangle.parse(video_data) video.title = xml.title video.slug = slugify(video.title) video.summary = xml.content #video.thumb_url = xml[xml_media.group][xml_media.thumbnail:][1]('url') return video
def initrecurls(self, loclist): for url in loclist: doc = untangle.parse(url) if int(doc.xml.changes['size']) > 0: for i in doc.xml.changes.id: self.recurls.append(baseurl + i.cdata + s + format) return self.recurls
def scihub2list(inpath, outpath): # get the list of file names from the sciHub search results logobj = untangle.parse(inpath) entrylist = logobj.feed.entry filenames = list() for obj in entrylist: filenames.append(obj.title.cdata.encode().strip()) pathlist = list() for file in filenames: year = file[17:21] month = file[21:23] day = file[23:25] pathlist.append("/eodc/products/copernicus.eu/s1a_csar_grdh_iw/" + year + '/' + month + '/' + day + '/') # get the full file names filelist = list() for i in range(len(filenames)): result = sgrt.common.recursive_filesearch.search_file(pathlist[i], filenames[i]+'.zip') if len(result) != 0: filelist.append(result[0]) # write results f = open(outpath, "wb") for x in filelist: f.write(x + '\n') #f.writelines(filelist) f.close() #with open(outpath, "wb") as f: # writer = csv.writer(f, quoting=csv.QUOTE_NONE, lineterminator='\n', delimiter=',') # writer.writerow(filelist)
def remove_processed_from_list(filelist, logfile, outpath): # read original file list with open (filelist, "rb") as f: file_list_old = f.readlines() # read log-file logobj = untangle.parse(logfile) processed = logobj.root.process_log.list_of_processed_files.cdata.encode().strip() processed = processed.split(", ") file_list_new = list() for listitem in file_list_old: exists = 0 for pfile in processed: if os.path.basename(listitem.strip()) == pfile: exists = 1 if exists == 0: file_list_new.append(listitem.strip()) # write results f = open(outpath, "wb") for x in file_list_new: f.write(x + '\n') #f.writelines(filelist) f.close()
def _parse_xml(xml_string): try: xml_obj = untangle.parse(xml_string) except Exception as e: raise Exception("Unable to parse the XML : {}".format(e.message)) return xml_obj
def get_outage_data(raw_data): """Reads raw data and returns untangled outage data.""" # Untangle content from downloaded data untangled_data = untangle.parse(raw_data.content) # Get outage data from tree return untangled_data.NYCOutages.outage
def access_cdata(): """ Shows how to handle CDATA elements """ o = untangle.parse( '<node id="5">This is cdata<subnode value="abc"/></node>' ) return ("%s" % (o.node.cdata))
def fcs_leaf(self, word, wwn, fid = -1): """return the info for a specified leaf in the module brocade-fibrecahnnel-switch yang file """ #vf_id = doc.Response.fibrechannel_switch.vf_id.cdata # s = get_tasks('vf-id', switch_ip, wwn, Auth_send) ## command from below s = get_tasks(word,switch_ip, wwn,Auth_send, "fc_switch", fid ) doc = untangle.parse(s.text) try: if "vf-id" == word: done = doc.Response.fibrechannel_switch.vf_id.cdata if "domain-id" == word: done = doc.Response.fibrechannel_switch.domain_id.cdata if "fcid" == word: done = doc.Response.fibrechannel_switch.fcid.cdata if "user-friendly-name" == word: done = doc.Response.fibrechannel_switch.user_friendly_name.cdata if "enabled-state" == word: done = doc.Response.fibrechannel_switch.enabled_state.cdata if "up-time" == word: done = doc.Response.fibrechannel_switch.up_time.cdata if "model" == word: done = doc.Response.fibrechannel_switch.model.cdata if "firmware-version" == word: done = doc.Response.fibrechannel_switch.firmware_version.cdata if "ip-address" == word: done = doc.Response.fibrechannel_switch.ip_address.ip_address.cdata ####################### THIS IS A SUB CONTAINER if "domain-name" == word: done = doc.Response.fibrechannel_switch.domain_name.cdata if "fabric-user-friendly-name" == word: done = doc.Response.fibrechannel_switch.fabric_user_friendly_name.cdata if "ag-mode" == word: done = doc.Response.fibrechannel_switch.ag_mode.cdata if "principal" == word: done = doc.Response.fibrechannel_switch.principal.cdata # 'domain-id', 'user-friendly-name', 'fcid', 'vf-id', 'principal', 'enabled-state', # 'up-time', 'model', 'firmware-version', 'ip-address', 'domain-name', 'fabric-user-friendly-name', 'ag-mode' if done == "none": print("\n\nError in fs_leaf the command requested is not one of the\ \ncommand requested was %s \ \n\nthe list of valid commands is \ndomain-id\nchassis-wwn\ \nswitch-user-friendly-name\nprincipal\nfcid\nip-address\ \nfcip-address\nipv6-address\nfirmware-version\n\n" % word) except AttributeError: print("Error during untangle - None was returned") done = "Untangle Error" except: print("Error in untagle" , sys.exc_info()[0] ) done = "Untangle Error" return(done)
def process(xml): #Procesamos al señor XML o = untangle.parse(xml) #Nos facilitamos la vida y parseamos el XML url = o.upload.links.original.cdata #Extraemos el link de la imagen subida #delete_page = o.upload.links.delete_page.cdata #Esto es para obtener el link para eliminar la imagen subida tw2 = textweet.get() #Obtenemos valor del campo de texto, osea el tweet a enviar api.update_status(''+ tw2 + ' ' + url + '') #Tweet + Imagen subida print ('\n------------------\n=== Tweet enviado ===\n'+ tw2 +'\n\n=== Foto subida ===\n'+ url +'\n\n=== Enviado con exito ===\nSi\n------------------\n') #Log en terminal texttw.delete(0, END) #Borramos campo de texto lasttweet() #Obtenemos ultimo tweet
def read_r2020_evtservprest(dados, arquivo, validar=False): import untangle xml = ler_arquivo(arquivo).replace("s:", "") doc = untangle.parse(xml) r2020_evtservprest_dados = {} xmlns = doc.Reinf['xmlns'].split('/') if validar: r2020_evtservprest_dados['status'] = 1 else: r2020_evtservprest_dados['status'] = 0 r2020_evtservprest_dados['versao'] = xmlns[len(xmlns) - 1] r2020_evtservprest_dados['identidade'] = doc.Reinf.evtServPrest['id'] # verificacao = executar_sql("""SELECT count(*) # FROM public.transmissor_eventos_efdreinf WHERE identidade = '%s'; # """ % r2020_evtservprest_dados['identidade'], True) # if validar and verificacao[0][0] != 0: # return False #r2020_evtservprest_dados['processamento_codigo_resposta'] = 1 evtServPrest = doc.Reinf.evtServPrest if 'indRetif' in dir(evtServPrest.ideEvento): r2020_evtservprest_dados[ 'indretif'] = evtServPrest.ideEvento.indRetif.cdata if 'nrRecibo' in dir(evtServPrest.ideEvento): r2020_evtservprest_dados[ 'nrrecibo'] = evtServPrest.ideEvento.nrRecibo.cdata if 'perApur' in dir(evtServPrest.ideEvento): r2020_evtservprest_dados[ 'perapur'] = evtServPrest.ideEvento.perApur.cdata if 'tpAmb' in dir(evtServPrest.ideEvento): r2020_evtservprest_dados['tpamb'] = evtServPrest.ideEvento.tpAmb.cdata if 'procEmi' in dir(evtServPrest.ideEvento): r2020_evtservprest_dados[ 'procemi'] = evtServPrest.ideEvento.procEmi.cdata if 'verProc' in dir(evtServPrest.ideEvento): r2020_evtservprest_dados[ 'verproc'] = evtServPrest.ideEvento.verProc.cdata if 'tpInsc' in dir(evtServPrest.ideContri): r2020_evtservprest_dados[ 'tpinsc'] = evtServPrest.ideContri.tpInsc.cdata if 'nrInsc' in dir(evtServPrest.ideContri): r2020_evtservprest_dados[ 'nrinsc'] = evtServPrest.ideContri.nrInsc.cdata if 'tpInscEstabPrest' in dir(evtServPrest.infoServPrest.ideEstabPrest): r2020_evtservprest_dados[ 'tpinscestabprest'] = evtServPrest.infoServPrest.ideEstabPrest.tpInscEstabPrest.cdata if 'nrInscEstabPrest' in dir(evtServPrest.infoServPrest.ideEstabPrest): r2020_evtservprest_dados[ 'nrinscestabprest'] = evtServPrest.infoServPrest.ideEstabPrest.nrInscEstabPrest.cdata if 'tpInscTomador' in dir( evtServPrest.infoServPrest.ideEstabPrest.ideTomador): r2020_evtservprest_dados[ 'tpinsctomador'] = evtServPrest.infoServPrest.ideEstabPrest.ideTomador.tpInscTomador.cdata if 'nrInscTomador' in dir( evtServPrest.infoServPrest.ideEstabPrest.ideTomador): r2020_evtservprest_dados[ 'nrinsctomador'] = evtServPrest.infoServPrest.ideEstabPrest.ideTomador.nrInscTomador.cdata if 'indObra' in dir(evtServPrest.infoServPrest.ideEstabPrest.ideTomador): r2020_evtservprest_dados[ 'indobra'] = evtServPrest.infoServPrest.ideEstabPrest.ideTomador.indObra.cdata if 'vlrTotalBruto' in dir( evtServPrest.infoServPrest.ideEstabPrest.ideTomador): r2020_evtservprest_dados[ 'vlrtotalbruto'] = evtServPrest.infoServPrest.ideEstabPrest.ideTomador.vlrTotalBruto.cdata if 'vlrTotalBaseRet' in dir( evtServPrest.infoServPrest.ideEstabPrest.ideTomador): r2020_evtservprest_dados[ 'vlrtotalbaseret'] = evtServPrest.infoServPrest.ideEstabPrest.ideTomador.vlrTotalBaseRet.cdata if 'vlrTotalRetPrinc' in dir( evtServPrest.infoServPrest.ideEstabPrest.ideTomador): r2020_evtservprest_dados[ 'vlrtotalretprinc'] = evtServPrest.infoServPrest.ideEstabPrest.ideTomador.vlrTotalRetPrinc.cdata if 'vlrTotalRetAdic' in dir( evtServPrest.infoServPrest.ideEstabPrest.ideTomador): r2020_evtservprest_dados[ 'vlrtotalretadic'] = evtServPrest.infoServPrest.ideEstabPrest.ideTomador.vlrTotalRetAdic.cdata if 'vlrTotalNRetPrinc' in dir( evtServPrest.infoServPrest.ideEstabPrest.ideTomador): r2020_evtservprest_dados[ 'vlrtotalnretprinc'] = evtServPrest.infoServPrest.ideEstabPrest.ideTomador.vlrTotalNRetPrinc.cdata if 'vlrTotalNRetAdic' in dir( evtServPrest.infoServPrest.ideEstabPrest.ideTomador): r2020_evtservprest_dados[ 'vlrtotalnretadic'] = evtServPrest.infoServPrest.ideEstabPrest.ideTomador.vlrTotalNRetAdic.cdata if 'inclusao' in dir(evtServPrest.infoServPrest): r2020_evtservprest_dados['operacao'] = 1 elif 'alteracao' in dir(evtServPrest.infoServPrest): r2020_evtservprest_dados['operacao'] = 2 elif 'exclusao' in dir(evtServPrest.infoServPrest): r2020_evtservprest_dados['operacao'] = 3 #print dados insert = create_insert('r2020_evtservprest', r2020_evtservprest_dados) resp = executar_sql(insert, True) r2020_evtservprest_id = resp[0][0] dados['evento'] = 'r2020' dados['identidade'] = r2020_evtservprest_id dados['identidade_evento'] = doc.Reinf.evtServPrest['id'] dados['status'] = 1 if 'nfs' in dir(evtServPrest.infoServPrest.ideEstabPrest.ideTomador): for nfs in evtServPrest.infoServPrest.ideEstabPrest.ideTomador.nfs: r2020_nfs_dados = {} r2020_nfs_dados['r2020_evtservprest_id'] = r2020_evtservprest_id if 'serie' in dir(nfs): r2020_nfs_dados['serie'] = nfs.serie.cdata if 'numDocto' in dir(nfs): r2020_nfs_dados['numdocto'] = nfs.numDocto.cdata if 'dtEmissaoNF' in dir(nfs): r2020_nfs_dados['dtemissaonf'] = nfs.dtEmissaoNF.cdata if 'vlrBruto' in dir(nfs): r2020_nfs_dados['vlrbruto'] = nfs.vlrBruto.cdata if 'obs' in dir(nfs): r2020_nfs_dados['obs'] = nfs.obs.cdata insert = create_insert('r2020_nfs', r2020_nfs_dados) resp = executar_sql(insert, True) r2020_nfs_id = resp[0][0] #print r2020_nfs_id if 'infoTpServ' in dir(nfs): for infoTpServ in nfs.infoTpServ: r2020_infotpserv_dados = {} r2020_infotpserv_dados['r2020_nfs_id'] = r2020_nfs_id if 'tpServico' in dir(infoTpServ): r2020_infotpserv_dados[ 'tpservico'] = infoTpServ.tpServico.cdata if 'vlrBaseRet' in dir(infoTpServ): r2020_infotpserv_dados[ 'vlrbaseret'] = infoTpServ.vlrBaseRet.cdata if 'vlrRetencao' in dir(infoTpServ): r2020_infotpserv_dados[ 'vlrretencao'] = infoTpServ.vlrRetencao.cdata if 'vlrRetSub' in dir(infoTpServ): r2020_infotpserv_dados[ 'vlrretsub'] = infoTpServ.vlrRetSub.cdata if 'vlrNRetPrinc' in dir(infoTpServ): r2020_infotpserv_dados[ 'vlrnretprinc'] = infoTpServ.vlrNRetPrinc.cdata if 'vlrServicos15' in dir(infoTpServ): r2020_infotpserv_dados[ 'vlrservicos15'] = infoTpServ.vlrServicos15.cdata if 'vlrServicos20' in dir(infoTpServ): r2020_infotpserv_dados[ 'vlrservicos20'] = infoTpServ.vlrServicos20.cdata if 'vlrServicos25' in dir(infoTpServ): r2020_infotpserv_dados[ 'vlrservicos25'] = infoTpServ.vlrServicos25.cdata if 'vlrAdicional' in dir(infoTpServ): r2020_infotpserv_dados[ 'vlradicional'] = infoTpServ.vlrAdicional.cdata if 'vlrNRetAdic' in dir(infoTpServ): r2020_infotpserv_dados[ 'vlrnretadic'] = infoTpServ.vlrNRetAdic.cdata insert = create_insert('r2020_infotpserv', r2020_infotpserv_dados) resp = executar_sql(insert, True) r2020_infotpserv_id = resp[0][0] #print r2020_infotpserv_id if 'infoProcRetPr' in dir( evtServPrest.infoServPrest.ideEstabPrest.ideTomador): for infoProcRetPr in evtServPrest.infoServPrest.ideEstabPrest.ideTomador.infoProcRetPr: r2020_infoprocretpr_dados = {} r2020_infoprocretpr_dados[ 'r2020_evtservprest_id'] = r2020_evtservprest_id if 'tpProcRetPrinc' in dir(infoProcRetPr): r2020_infoprocretpr_dados[ 'tpprocretprinc'] = infoProcRetPr.tpProcRetPrinc.cdata if 'nrProcRetPrinc' in dir(infoProcRetPr): r2020_infoprocretpr_dados[ 'nrprocretprinc'] = infoProcRetPr.nrProcRetPrinc.cdata if 'codSuspPrinc' in dir(infoProcRetPr): r2020_infoprocretpr_dados[ 'codsuspprinc'] = infoProcRetPr.codSuspPrinc.cdata if 'valorPrinc' in dir(infoProcRetPr): r2020_infoprocretpr_dados[ 'valorprinc'] = infoProcRetPr.valorPrinc.cdata insert = create_insert('r2020_infoprocretpr', r2020_infoprocretpr_dados) resp = executar_sql(insert, True) r2020_infoprocretpr_id = resp[0][0] #print r2020_infoprocretpr_id if 'infoProcRetAd' in dir( evtServPrest.infoServPrest.ideEstabPrest.ideTomador): for infoProcRetAd in evtServPrest.infoServPrest.ideEstabPrest.ideTomador.infoProcRetAd: r2020_infoprocretad_dados = {} r2020_infoprocretad_dados[ 'r2020_evtservprest_id'] = r2020_evtservprest_id if 'tpProcRetAdic' in dir(infoProcRetAd): r2020_infoprocretad_dados[ 'tpprocretadic'] = infoProcRetAd.tpProcRetAdic.cdata if 'nrProcRetAdic' in dir(infoProcRetAd): r2020_infoprocretad_dados[ 'nrprocretadic'] = infoProcRetAd.nrProcRetAdic.cdata if 'codSuspAdic' in dir(infoProcRetAd): r2020_infoprocretad_dados[ 'codsuspadic'] = infoProcRetAd.codSuspAdic.cdata if 'valorAdic' in dir(infoProcRetAd): r2020_infoprocretad_dados[ 'valoradic'] = infoProcRetAd.valorAdic.cdata insert = create_insert('r2020_infoprocretad', r2020_infoprocretad_dados) resp = executar_sql(insert, True) r2020_infoprocretad_id = resp[0][0] #print r2020_infoprocretad_id from emensageriapro.efdreinf.views.r2020_evtservprest_verificar import validar_evento_funcao if validar: validar_evento_funcao(r2020_evtservprest_id, 'default') return dados
def create_tumour_ablation_mapping(dir_xml_files, list_segmentations_paths_xml): """ Parses all the XML Files in a given directory and extracts the Source SeriesInstanceSeries on which the segmentation files were annotated and the SeriesInstanceUID of the segmentations :param list_segmentations_paths_xml: list of dicts with SeriesInstanceUID, TimeStamp adn SourceUID of segmentation files :param dir_xml_files: filepath to where the XML recordings are (date_time) :return: list_segmentations_paths_xml: Pandas DF with segmentation Sorur """ # list_dict_paths_xml = [] for subdir, dirs, files in os.walk(dir_xml_files): for file in sorted(files): xml_file = os.path.join(subdir, file) if file.startswith('AblationValidation_') or file.startswith( 'Plan_'): try: xmlobj = ut.parse(xml_file) except Exception as e: # the file is not an xml continue try: trajectories = xmlobj.Eagles.Trajectories except Exception as e: print(repr(e)) continue for idx, tr in enumerate(trajectories): try: single_tr = tr.Trajectory for idx_tr, el in enumerate(single_tr): # do the source series mapping based on the seriesID from the XML PatientData # match ablation and tumour segmentations based on the needle index # ignore unique values # just loop until you find a not None value for both tumour and ablation at the same needle idx try: segmentation = el.Segmentation except AttributeError: # no segmentation found in this trajectory continue # go back to the beginning of the loop try: series_number = xmlobj.Eagles.PatientData[ "seriesNumber"] except AttributeError: series_number = None try: segmentation_series_uid = el.Segmentation.SeriesUID.cdata except AttributeError: print( "No segmentation series uid for this segmentation" ) segmentation_series_uid = None try: segmentation_path_series = el.Segmentation.Path.cdata except AttributeError: # print('no segmentation path available') segmentation_path_series = None try: type_of_segmentation = el.Segmentation[ "TypeOfSegmentation"] except AttributeError: type_of_segmentation = None try: sphere_radius = el.Segmentation["SphereRadius"] except AttributeError: sphere_radius = None if sphere_radius is not None: print( 'patient dir has spheres as segmentations. must correct:', dir_xml_files) dict_series_path_xml = { "Timestamp": xmlobj.Eagles["time"], "NeedleIdx": idx_tr, "SourceSeriesID": xmlobj.Eagles.PatientData["seriesID"], "PathSeries": segmentation_path_series, "SegmentationSeriesUID_xml": segmentation_series_uid, "SegmentLabel": el.Segmentation["StructureType"], "TypeOfSegmentation": type_of_segmentation, "SphereRadius": sphere_radius, "SeriesNumber": series_number } if segmentation_series_uid or sphere_radius is not None: try: # look if the SegmentationSeriesUID already exists in the dictionary path_series_found = next( (item for item in list_segmentations_paths_xml if item["PathSeries"] == segmentation_path_series), None) sphere_radius_found = next( (item for item in list_segmentations_paths_xml if item["SphereRadius"] == sphere_radius), None) except AttributeError: print('WTF') # print(list_segmentations_paths_xml) if path_series_found is None or sphere_radius_found is None: # only add unique segmentations paths, skip duplicates list_segmentations_paths_xml.append( dict_series_path_xml) except Exception: # no clue what happened, some XML error list_segmentations_paths_xml.append(None) return list_segmentations_paths_xml
def validacoes_s5013_evtfgts(arquivo): from emensageriapro.mensageiro.functions.funcoes_validacoes import validar_campo import untangle xml = ler_arquivo(arquivo).replace("s:", "") doc = untangle.parse(xml) validacoes_lista = [] xmlns = doc.eSocial['xmlns'].split('/') evtFGTS = doc.eSocial.evtFGTS if 'perApur' in dir(evtFGTS.ideEvento): validacoes_lista = validar_campo(validacoes_lista, 'evtFGTS.ideEvento.perApur', evtFGTS.ideEvento.perApur.cdata, 1, '') if 'tpInsc' in dir(evtFGTS.ideEmpregador): validacoes_lista = validar_campo(validacoes_lista, 'evtFGTS.ideEmpregador.tpInsc', evtFGTS.ideEmpregador.tpInsc.cdata, 1, '1;2') if 'nrInsc' in dir(evtFGTS.ideEmpregador): validacoes_lista = validar_campo(validacoes_lista, 'evtFGTS.ideEmpregador.nrInsc', evtFGTS.ideEmpregador.nrInsc.cdata, 1, '') if 'nrRecArqBase' in dir(evtFGTS.infoFGTS): validacoes_lista = validar_campo(validacoes_lista, 'evtFGTS.infoFGTS.nrRecArqBase', evtFGTS.infoFGTS.nrRecArqBase.cdata, 1, '') if 'indExistInfo' in dir(evtFGTS.infoFGTS): validacoes_lista = validar_campo(validacoes_lista, 'evtFGTS.infoFGTS.indExistInfo', evtFGTS.infoFGTS.indExistInfo.cdata, 1, '1;2;3') if 'basePerApur' in dir(evtFGTS.infoFGTS.infoBaseFGTS): for basePerApur in evtFGTS.infoFGTS.infoBaseFGTS.basePerApur: if 'tpValor' in dir(basePerApur): validacoes_lista = validar_campo(validacoes_lista, 'basePerApur.tpValor', basePerApur.tpValor.cdata, 1, '') if 'baseFGTS' in dir(basePerApur): validacoes_lista = validar_campo(validacoes_lista, 'basePerApur.baseFGTS', basePerApur.baseFGTS.cdata, 1, '') if 'infoBasePerAntE' in dir(evtFGTS.infoFGTS.infoBaseFGTS): for infoBasePerAntE in evtFGTS.infoFGTS.infoBaseFGTS.infoBasePerAntE: if 'perRef' in dir(infoBasePerAntE): validacoes_lista = validar_campo(validacoes_lista, 'infoBasePerAntE.perRef', infoBasePerAntE.perRef.cdata, 1, '') if 'basePerAntE' in dir(infoBasePerAntE): for basePerAntE in infoBasePerAntE.basePerAntE: if 'tpValorE' in dir(basePerAntE): validacoes_lista = validar_campo( validacoes_lista, 'basePerAntE.tpValorE', basePerAntE.tpValorE.cdata, 1, '') if 'baseFGTSE' in dir(basePerAntE): validacoes_lista = validar_campo( validacoes_lista, 'basePerAntE.baseFGTSE', basePerAntE.baseFGTSE.cdata, 1, '') if 'dpsPerApur' in dir(evtFGTS.infoFGTS.infoDpsFGTS): for dpsPerApur in evtFGTS.infoFGTS.infoDpsFGTS.dpsPerApur: if 'tpDps' in dir(dpsPerApur): validacoes_lista = validar_campo(validacoes_lista, 'dpsPerApur.tpDps', dpsPerApur.tpDps.cdata, 1, '') if 'vrFGTS' in dir(dpsPerApur): validacoes_lista = validar_campo(validacoes_lista, 'dpsPerApur.vrFGTS', dpsPerApur.vrFGTS.cdata, 1, '') if 'infoDpsPerAntE' in dir(evtFGTS.infoFGTS.infoDpsFGTS): for infoDpsPerAntE in evtFGTS.infoFGTS.infoDpsFGTS.infoDpsPerAntE: if 'perRef' in dir(infoDpsPerAntE): validacoes_lista = validar_campo(validacoes_lista, 'infoDpsPerAntE.perRef', infoDpsPerAntE.perRef.cdata, 1, '') if 'dpsPerAntE' in dir(infoDpsPerAntE): for dpsPerAntE in infoDpsPerAntE.dpsPerAntE: if 'tpDpsE' in dir(dpsPerAntE): validacoes_lista = validar_campo( validacoes_lista, 'dpsPerAntE.tpDpsE', dpsPerAntE.tpDpsE.cdata, 1, '') if 'vrFGTSE' in dir(dpsPerAntE): validacoes_lista = validar_campo( validacoes_lista, 'dpsPerAntE.vrFGTSE', dpsPerAntE.vrFGTSE.cdata, 1, '') return validacoes_lista
def validacoes_r3010_evtespdesportivo(arquivo): from emensageriapro.mensageiro.functions.funcoes_validacoes import validar_campo import untangle xml = ler_arquivo(arquivo).replace("s:", "") doc = untangle.parse(xml) validacoes_lista = [] xmlns = doc.Reinf['xmlns'].split('/') evtEspDesportivo = doc.Reinf.evtEspDesportivo if 'indRetif' in dir(evtEspDesportivo.ideEvento): validacoes_lista = validar_campo( validacoes_lista, 'evtEspDesportivo.ideEvento.indRetif', evtEspDesportivo.ideEvento.indRetif.cdata, 1, '1;2') if 'nrRecibo' in dir(evtEspDesportivo.ideEvento): validacoes_lista = validar_campo( validacoes_lista, 'evtEspDesportivo.ideEvento.nrRecibo', evtEspDesportivo.ideEvento.nrRecibo.cdata, 0, '') if 'dtApuracao' in dir(evtEspDesportivo.ideEvento): validacoes_lista = validar_campo( validacoes_lista, 'evtEspDesportivo.ideEvento.dtApuracao', evtEspDesportivo.ideEvento.dtApuracao.cdata, 1, '') if 'tpAmb' in dir(evtEspDesportivo.ideEvento): validacoes_lista = validar_campo( validacoes_lista, 'evtEspDesportivo.ideEvento.tpAmb', evtEspDesportivo.ideEvento.tpAmb.cdata, 1, '1;2') if 'procEmi' in dir(evtEspDesportivo.ideEvento): validacoes_lista = validar_campo( validacoes_lista, 'evtEspDesportivo.ideEvento.procEmi', evtEspDesportivo.ideEvento.procEmi.cdata, 1, '1;2') if 'verProc' in dir(evtEspDesportivo.ideEvento): validacoes_lista = validar_campo( validacoes_lista, 'evtEspDesportivo.ideEvento.verProc', evtEspDesportivo.ideEvento.verProc.cdata, 1, '') if 'tpInsc' in dir(evtEspDesportivo.ideContri): validacoes_lista = validar_campo( validacoes_lista, 'evtEspDesportivo.ideContri.tpInsc', evtEspDesportivo.ideContri.tpInsc.cdata, 1, '1;2') if 'nrInsc' in dir(evtEspDesportivo.ideContri): validacoes_lista = validar_campo( validacoes_lista, 'evtEspDesportivo.ideContri.nrInsc', evtEspDesportivo.ideContri.nrInsc.cdata, 1, '') if 'tpInscEstab' in dir(evtEspDesportivo.ideContri.ideEstab): validacoes_lista = validar_campo( validacoes_lista, 'evtEspDesportivo.ideContri.ideEstab.tpInscEstab', evtEspDesportivo.ideContri.ideEstab.tpInscEstab.cdata, 1, '1') if 'nrInscEstab' in dir(evtEspDesportivo.ideContri.ideEstab): validacoes_lista = validar_campo( validacoes_lista, 'evtEspDesportivo.ideContri.ideEstab.nrInscEstab', evtEspDesportivo.ideContri.ideEstab.nrInscEstab.cdata, 1, '') if 'vlrReceitaTotal' in dir( evtEspDesportivo.ideContri.ideEstab.receitaTotal): validacoes_lista = validar_campo( validacoes_lista, 'evtEspDesportivo.ideContri.ideEstab.receitaTotal.vlrReceitaTotal', evtEspDesportivo.ideContri.ideEstab.receitaTotal.vlrReceitaTotal. cdata, 1, '') if 'vlrCP' in dir(evtEspDesportivo.ideContri.ideEstab.receitaTotal): validacoes_lista = validar_campo( validacoes_lista, 'evtEspDesportivo.ideContri.ideEstab.receitaTotal.vlrCP', evtEspDesportivo.ideContri.ideEstab.receitaTotal.vlrCP.cdata, 1, '') if 'vlrCPSuspTotal' in dir( evtEspDesportivo.ideContri.ideEstab.receitaTotal): validacoes_lista = validar_campo( validacoes_lista, 'evtEspDesportivo.ideContri.ideEstab.receitaTotal.vlrCPSuspTotal', evtEspDesportivo.ideContri.ideEstab.receitaTotal.vlrCPSuspTotal. cdata, 0, '') if 'vlrReceitaClubes' in dir( evtEspDesportivo.ideContri.ideEstab.receitaTotal): validacoes_lista = validar_campo( validacoes_lista, 'evtEspDesportivo.ideContri.ideEstab.receitaTotal.vlrReceitaClubes', evtEspDesportivo.ideContri.ideEstab.receitaTotal.vlrReceitaClubes. cdata, 1, '') if 'vlrRetParc' in dir(evtEspDesportivo.ideContri.ideEstab.receitaTotal): validacoes_lista = validar_campo( validacoes_lista, 'evtEspDesportivo.ideContri.ideEstab.receitaTotal.vlrRetParc', evtEspDesportivo.ideContri.ideEstab.receitaTotal.vlrRetParc.cdata, 1, '') if 'boletim' in dir(evtEspDesportivo.ideContri.ideEstab): for boletim in evtEspDesportivo.ideContri.ideEstab.boletim: if 'nrBoletim' in dir(boletim): validacoes_lista = validar_campo(validacoes_lista, 'boletim.nrBoletim', boletim.nrBoletim.cdata, 1, '') if 'tpCompeticao' in dir(boletim): validacoes_lista = validar_campo(validacoes_lista, 'boletim.tpCompeticao', boletim.tpCompeticao.cdata, 1, '1;2') if 'categEvento' in dir(boletim): validacoes_lista = validar_campo(validacoes_lista, 'boletim.categEvento', boletim.categEvento.cdata, 1, '1;2;3;4') if 'modDesportiva' in dir(boletim): validacoes_lista = validar_campo(validacoes_lista, 'boletim.modDesportiva', boletim.modDesportiva.cdata, 1, '') if 'nomeCompeticao' in dir(boletim): validacoes_lista = validar_campo(validacoes_lista, 'boletim.nomeCompeticao', boletim.nomeCompeticao.cdata, 1, '') if 'cnpjMandante' in dir(boletim): validacoes_lista = validar_campo(validacoes_lista, 'boletim.cnpjMandante', boletim.cnpjMandante.cdata, 1, '') if 'cnpjVisitante' in dir(boletim): validacoes_lista = validar_campo(validacoes_lista, 'boletim.cnpjVisitante', boletim.cnpjVisitante.cdata, 0, '') if 'nomeVisitante' in dir(boletim): validacoes_lista = validar_campo(validacoes_lista, 'boletim.nomeVisitante', boletim.nomeVisitante.cdata, 0, '') if 'pracaDesportiva' in dir(boletim): validacoes_lista = validar_campo(validacoes_lista, 'boletim.pracaDesportiva', boletim.pracaDesportiva.cdata, 1, '') if 'codMunic' in dir(boletim): validacoes_lista = validar_campo(validacoes_lista, 'boletim.codMunic', boletim.codMunic.cdata, 0, '') if 'uf' in dir(boletim): validacoes_lista = validar_campo(validacoes_lista, 'boletim.uf', boletim.uf.cdata, 1, '') if 'qtdePagantes' in dir(boletim): validacoes_lista = validar_campo(validacoes_lista, 'boletim.qtdePagantes', boletim.qtdePagantes.cdata, 1, '') if 'qtdeNaoPagantes' in dir(boletim): validacoes_lista = validar_campo(validacoes_lista, 'boletim.qtdeNaoPagantes', boletim.qtdeNaoPagantes.cdata, 1, '') if 'receitaIngressos' in dir(boletim): for receitaIngressos in boletim.receitaIngressos: if 'tpIngresso' in dir(receitaIngressos): validacoes_lista = validar_campo( validacoes_lista, 'receitaIngressos.tpIngresso', receitaIngressos.tpIngresso.cdata, 1, '1;2;3;4') if 'descIngr' in dir(receitaIngressos): validacoes_lista = validar_campo( validacoes_lista, 'receitaIngressos.descIngr', receitaIngressos.descIngr.cdata, 1, '') if 'qtdeIngrVenda' in dir(receitaIngressos): validacoes_lista = validar_campo( validacoes_lista, 'receitaIngressos.qtdeIngrVenda', receitaIngressos.qtdeIngrVenda.cdata, 1, '') if 'qtdeIngrVendidos' in dir(receitaIngressos): validacoes_lista = validar_campo( validacoes_lista, 'receitaIngressos.qtdeIngrVendidos', receitaIngressos.qtdeIngrVendidos.cdata, 1, '') if 'qtdeIngrDev' in dir(receitaIngressos): validacoes_lista = validar_campo( validacoes_lista, 'receitaIngressos.qtdeIngrDev', receitaIngressos.qtdeIngrDev.cdata, 1, '') if 'precoIndiv' in dir(receitaIngressos): validacoes_lista = validar_campo( validacoes_lista, 'receitaIngressos.precoIndiv', receitaIngressos.precoIndiv.cdata, 1, '') if 'vlrTotal' in dir(receitaIngressos): validacoes_lista = validar_campo( validacoes_lista, 'receitaIngressos.vlrTotal', receitaIngressos.vlrTotal.cdata, 1, '') if 'outrasReceitas' in dir(boletim): for outrasReceitas in boletim.outrasReceitas: if 'tpReceita' in dir(outrasReceitas): validacoes_lista = validar_campo( validacoes_lista, 'outrasReceitas.tpReceita', outrasReceitas.tpReceita.cdata, 1, '1;2;3;4;5') if 'vlrReceita' in dir(outrasReceitas): validacoes_lista = validar_campo( validacoes_lista, 'outrasReceitas.vlrReceita', outrasReceitas.vlrReceita.cdata, 1, '') if 'descReceita' in dir(outrasReceitas): validacoes_lista = validar_campo( validacoes_lista, 'outrasReceitas.descReceita', outrasReceitas.descReceita.cdata, 1, '') if 'infoProc' in dir(evtEspDesportivo.ideContri.ideEstab.receitaTotal): for infoProc in evtEspDesportivo.ideContri.ideEstab.receitaTotal.infoProc: if 'tpProc' in dir(infoProc): validacoes_lista = validar_campo(validacoes_lista, 'infoProc.tpProc', infoProc.tpProc.cdata, 1, '1;2') if 'nrProc' in dir(infoProc): validacoes_lista = validar_campo(validacoes_lista, 'infoProc.nrProc', infoProc.nrProc.cdata, 1, '') if 'codSusp' in dir(infoProc): validacoes_lista = validar_campo(validacoes_lista, 'infoProc.codSusp', infoProc.codSusp.cdata, 0, '') if 'vlrCPSusp' in dir(infoProc): validacoes_lista = validar_campo(validacoes_lista, 'infoProc.vlrCPSusp', infoProc.vlrCPSusp.cdata, 1, '') return validacoes_lista
import untangle import pandas # Sample lambda function to parse returned XML & extract computer-names (note it has 1 parameter & # returns a dataframe # previously: ResponseDataframe = pd.DataFrame([i.cdata for i in untangle.parse(x).BESAPI.Query.Result.Answer]) computersLf1 = lambda x: pd.DataFrame( [i.cdata for i in untangle.parse(x).BESAPI.Query.Result.Answer]) computersLf2 = lambda x: pd.DataFrame( [i.cdata.split(">") for i in untangle.parse(x).BESAPI.Query.Result.Answer]) computersLf3 = lambda x: pd.DataFrame( [i.cdata.split(",") for i in untangle.parse(x).BESAPI.Query.Result.Answer])
def validacoes_s2231_evtcessao(arquivo): from emensageriapro.mensageiro.functions.funcoes_validacoes import validar_campo import untangle xml = ler_arquivo(arquivo).replace("s:", "") doc = untangle.parse(xml) validacoes_lista = [] xmlns = doc.eSocial['xmlns'].split('/') evtCessao = doc.eSocial.evtCessao #variaveis if 'ideEvento' in dir(evtCessao.ideEvento): for ideEvento in evtCessao.ideEvento: if 'indRetif' in dir(ideEvento): validacoes_lista = validar_campo(validacoes_lista, 'ideEvento.indRetif', ideEvento.indRetif.cdata, 1, u'1, 2') if 'nrRecibo' in dir(ideEvento): validacoes_lista = validar_campo(validacoes_lista, 'ideEvento.nrRecibo', ideEvento.nrRecibo.cdata, 0, u'None') if 'tpAmb' in dir(ideEvento): validacoes_lista = validar_campo(validacoes_lista, 'ideEvento.tpAmb', ideEvento.tpAmb.cdata, 1, u'1, 2') if 'procEmi' in dir(ideEvento): validacoes_lista = validar_campo(validacoes_lista, 'ideEvento.procEmi', ideEvento.procEmi.cdata, 1, u'1, 2, 3, 4, 5') if 'verProc' in dir(ideEvento): validacoes_lista = validar_campo(validacoes_lista, 'ideEvento.verProc', ideEvento.verProc.cdata, 1, u'None') if 'ideEmpregador' in dir(evtCessao.ideEmpregador): for ideEmpregador in evtCessao.ideEmpregador: if 'tpInsc' in dir(ideEmpregador): validacoes_lista = validar_campo(validacoes_lista, 'ideEmpregador.tpInsc', ideEmpregador.tpInsc.cdata, 1, u'1, 2, 3, 4, 5, 6') if 'nrInsc' in dir(ideEmpregador): validacoes_lista = validar_campo(validacoes_lista, 'ideEmpregador.nrInsc', ideEmpregador.nrInsc.cdata, 1, u'None') if 'ideVinculo' in dir(evtCessao.ideVinculo): for ideVinculo in evtCessao.ideVinculo: if 'cpfTrab' in dir(ideVinculo): validacoes_lista = validar_campo(validacoes_lista, 'ideVinculo.cpfTrab', ideVinculo.cpfTrab.cdata, 1, u'None') if 'nisTrab' in dir(ideVinculo): validacoes_lista = validar_campo(validacoes_lista, 'ideVinculo.nisTrab', ideVinculo.nisTrab.cdata, 1, u'None') if 'matricula' in dir(ideVinculo): validacoes_lista = validar_campo(validacoes_lista, 'ideVinculo.matricula', ideVinculo.matricula.cdata, 1, u'None') if 'infoCessao' in dir(evtCessao.infoCessao): for infoCessao in evtCessao.infoCessao: if 'iniCessao' in dir(infoCessao.iniCessao): for iniCessao in infoCessao.iniCessao: if 'dtIniCessao' in dir(iniCessao): validacoes_lista = validar_campo( validacoes_lista, 'iniCessao.dtIniCessao', iniCessao.dtIniCessao.cdata, 1, u'None') if 'cnpjCess' in dir(iniCessao): validacoes_lista = validar_campo( validacoes_lista, 'iniCessao.cnpjCess', iniCessao.cnpjCess.cdata, 1, u'None') if 'infOnus' in dir(iniCessao): validacoes_lista = validar_campo( validacoes_lista, 'iniCessao.infOnus', iniCessao.infOnus.cdata, 1, u'1, 2, 3, 4') if 'indCessao' in dir(iniCessao): validacoes_lista = validar_campo( validacoes_lista, 'iniCessao.indCessao', iniCessao.indCessao.cdata, 1, u'1, 2, 3') if 'dscSituacao' in dir(iniCessao): validacoes_lista = validar_campo( validacoes_lista, 'iniCessao.dscSituacao', iniCessao.dscSituacao.cdata, 0, u'None') if 'fimCessao' in dir(infoCessao.fimCessao): for fimCessao in infoCessao.fimCessao: if 'dtTermCessao' in dir(fimCessao): validacoes_lista = validar_campo( validacoes_lista, 'fimCessao.dtTermCessao', fimCessao.dtTermCessao.cdata, 1, u'None') return validacoes_lista
def validacoes_r1070_evttabprocesso(arquivo): from emensageriapro.mensageiro.functions.funcoes_validacoes import validar_campo import untangle xml = ler_arquivo(arquivo).replace("s:", "") doc = untangle.parse(xml) validacoes_lista = [] xmlns = doc.Reinf['xmlns'].split('/') evtTabProcesso = doc.Reinf.evtTabProcesso if 'tpAmb' in dir(evtTabProcesso.ideEvento): validacoes_lista = validar_campo(validacoes_lista, 'evtTabProcesso.ideEvento.tpAmb', evtTabProcesso.ideEvento.tpAmb.cdata, 1, '1;2') if 'procEmi' in dir(evtTabProcesso.ideEvento): validacoes_lista = validar_campo( validacoes_lista, 'evtTabProcesso.ideEvento.procEmi', evtTabProcesso.ideEvento.procEmi.cdata, 1, '1;2') if 'verProc' in dir(evtTabProcesso.ideEvento): validacoes_lista = validar_campo( validacoes_lista, 'evtTabProcesso.ideEvento.verProc', evtTabProcesso.ideEvento.verProc.cdata, 1, '') if 'tpInsc' in dir(evtTabProcesso.ideContri): validacoes_lista = validar_campo(validacoes_lista, 'evtTabProcesso.ideContri.tpInsc', evtTabProcesso.ideContri.tpInsc.cdata, 1, '1;2') if 'nrInsc' in dir(evtTabProcesso.ideContri): validacoes_lista = validar_campo(validacoes_lista, 'evtTabProcesso.ideContri.nrInsc', evtTabProcesso.ideContri.nrInsc.cdata, 1, '') if 'inclusao' in dir(evtTabProcesso.infoProcesso): for inclusao in evtTabProcesso.infoProcesso.inclusao: if 'tpProc' in dir(inclusao.ideProcesso): validacoes_lista = validar_campo( validacoes_lista, 'inclusao.ideProcesso.tpProc', inclusao.ideProcesso.tpProc.cdata, 1, '1;2') if 'nrProc' in dir(inclusao.ideProcesso): validacoes_lista = validar_campo( validacoes_lista, 'inclusao.ideProcesso.nrProc', inclusao.ideProcesso.nrProc.cdata, 1, '') if 'iniValid' in dir(inclusao.ideProcesso): validacoes_lista = validar_campo( validacoes_lista, 'inclusao.ideProcesso.iniValid', inclusao.ideProcesso.iniValid.cdata, 1, '') if 'fimValid' in dir(inclusao.ideProcesso): validacoes_lista = validar_campo( validacoes_lista, 'inclusao.ideProcesso.fimValid', inclusao.ideProcesso.fimValid.cdata, 0, '') if 'indAutoria' in dir(inclusao.ideProcesso): validacoes_lista = validar_campo( validacoes_lista, 'inclusao.ideProcesso.indAutoria', inclusao.ideProcesso.indAutoria.cdata, 1, '1;2') if 'infoSusp' in dir(inclusao.ideProcesso): for infoSusp in inclusao.ideProcesso.infoSusp: if 'codSusp' in dir(infoSusp): validacoes_lista = validar_campo( validacoes_lista, 'infoSusp.codSusp', infoSusp.codSusp.cdata, 0, '') if 'indSusp' in dir(infoSusp): validacoes_lista = validar_campo( validacoes_lista, 'infoSusp.indSusp', infoSusp.indSusp.cdata, 1, '01;02;03;04;05;08;09;10;11;12;13;90;92') if 'dtDecisao' in dir(infoSusp): validacoes_lista = validar_campo( validacoes_lista, 'infoSusp.dtDecisao', infoSusp.dtDecisao.cdata, 1, '') if 'indDeposito' in dir(infoSusp): validacoes_lista = validar_campo( validacoes_lista, 'infoSusp.indDeposito', infoSusp.indDeposito.cdata, 1, 'S;N') if 'dadosProcJud' in dir(inclusao.ideProcesso): for dadosProcJud in inclusao.ideProcesso.dadosProcJud: if 'ufVara' in dir(dadosProcJud): validacoes_lista = validar_campo( validacoes_lista, 'dadosProcJud.ufVara', dadosProcJud.ufVara.cdata, 1, '') if 'codMunic' in dir(dadosProcJud): validacoes_lista = validar_campo( validacoes_lista, 'dadosProcJud.codMunic', dadosProcJud.codMunic.cdata, 1, '') if 'idVara' in dir(dadosProcJud): validacoes_lista = validar_campo( validacoes_lista, 'dadosProcJud.idVara', dadosProcJud.idVara.cdata, 1, '') if 'alteracao' in dir(evtTabProcesso.infoProcesso): for alteracao in evtTabProcesso.infoProcesso.alteracao: if 'tpProc' in dir(alteracao.ideProcesso): validacoes_lista = validar_campo( validacoes_lista, 'alteracao.ideProcesso.tpProc', alteracao.ideProcesso.tpProc.cdata, 1, '1;2') if 'nrProc' in dir(alteracao.ideProcesso): validacoes_lista = validar_campo( validacoes_lista, 'alteracao.ideProcesso.nrProc', alteracao.ideProcesso.nrProc.cdata, 1, '') if 'iniValid' in dir(alteracao.ideProcesso): validacoes_lista = validar_campo( validacoes_lista, 'alteracao.ideProcesso.iniValid', alteracao.ideProcesso.iniValid.cdata, 1, '') if 'fimValid' in dir(alteracao.ideProcesso): validacoes_lista = validar_campo( validacoes_lista, 'alteracao.ideProcesso.fimValid', alteracao.ideProcesso.fimValid.cdata, 0, '') if 'indAutoria' in dir(alteracao.ideProcesso): validacoes_lista = validar_campo( validacoes_lista, 'alteracao.ideProcesso.indAutoria', alteracao.ideProcesso.indAutoria.cdata, 1, '1;2') if 'infoSusp' in dir(alteracao.ideProcesso): for infoSusp in alteracao.ideProcesso.infoSusp: if 'codSusp' in dir(infoSusp): validacoes_lista = validar_campo( validacoes_lista, 'infoSusp.codSusp', infoSusp.codSusp.cdata, 0, '') if 'indSusp' in dir(infoSusp): validacoes_lista = validar_campo( validacoes_lista, 'infoSusp.indSusp', infoSusp.indSusp.cdata, 1, '01;02;03;04;05;08;09;10;11;12;13;90;92') if 'dtDecisao' in dir(infoSusp): validacoes_lista = validar_campo( validacoes_lista, 'infoSusp.dtDecisao', infoSusp.dtDecisao.cdata, 1, '') if 'indDeposito' in dir(infoSusp): validacoes_lista = validar_campo( validacoes_lista, 'infoSusp.indDeposito', infoSusp.indDeposito.cdata, 1, 'S;N') if 'dadosProcJud' in dir(alteracao.ideProcesso): for dadosProcJud in alteracao.ideProcesso.dadosProcJud: if 'ufVara' in dir(dadosProcJud): validacoes_lista = validar_campo( validacoes_lista, 'dadosProcJud.ufVara', dadosProcJud.ufVara.cdata, 1, '') if 'codMunic' in dir(dadosProcJud): validacoes_lista = validar_campo( validacoes_lista, 'dadosProcJud.codMunic', dadosProcJud.codMunic.cdata, 1, '') if 'idVara' in dir(dadosProcJud): validacoes_lista = validar_campo( validacoes_lista, 'dadosProcJud.idVara', dadosProcJud.idVara.cdata, 1, '') if 'novaValidade' in dir(alteracao): for novaValidade in alteracao.novaValidade: if 'iniValid' in dir(novaValidade): validacoes_lista = validar_campo( validacoes_lista, 'novaValidade.iniValid', novaValidade.iniValid.cdata, 1, '') if 'fimValid' in dir(novaValidade): validacoes_lista = validar_campo( validacoes_lista, 'novaValidade.fimValid', novaValidade.fimValid.cdata, 0, '') if 'exclusao' in dir(evtTabProcesso.infoProcesso): for exclusao in evtTabProcesso.infoProcesso.exclusao: if 'tpProc' in dir(exclusao.ideProcesso): validacoes_lista = validar_campo( validacoes_lista, 'exclusao.ideProcesso.tpProc', exclusao.ideProcesso.tpProc.cdata, 1, '1;2') if 'nrProc' in dir(exclusao.ideProcesso): validacoes_lista = validar_campo( validacoes_lista, 'exclusao.ideProcesso.nrProc', exclusao.ideProcesso.nrProc.cdata, 1, '') if 'iniValid' in dir(exclusao.ideProcesso): validacoes_lista = validar_campo( validacoes_lista, 'exclusao.ideProcesso.iniValid', exclusao.ideProcesso.iniValid.cdata, 1, '') if 'fimValid' in dir(exclusao.ideProcesso): validacoes_lista = validar_campo( validacoes_lista, 'exclusao.ideProcesso.fimValid', exclusao.ideProcesso.fimValid.cdata, 0, '') return validacoes_lista
import random import untangle import os r34text = '-fur+-scat*+-darling_in_the_franxx+-furry+-dragon+-guro+-animal_penis+-animal+-wolf+-fox+-webm+-my_little_pony+-monster*+-3d+-animal*+-ant+-insects+-mammal+-horse+-blotch+-deer+-real*+-shit+-everlasting_summer+-copro*+-wtf+-censored+' + msg.replace( ' ', '+') r34text = msg.replace(' ', '+') r34text = '-fur+-scat*+-furry+-dragon+-guro+-animal_penis+-animal+-wolf+-fox+-webm+-my_little_pony+-monster*+-animal*+-ant+-insects+-mammal+-horse+-blotch+-deer+-real*+-shit+-everlasting_summer+-copro*+-wtf+-censored+' + msg.replace( ' ', '+') outMsg['message'] = '' outMsg['attachment'] = '' try: resp = untangle.parse( net_send( 'http://0s.oj2wyzjtgqxhq6dy.cmle.ru/index.php?page=dapi&s=post&limit=10000&q=index&tags=' + str(r34text), {}, 1)).posts.post if not os.path.exists('34'): os.mkdir('34') indexs = list(range(len(resp))) random.shuffle(indexs) for i in indexs[0:4]: #outMsg['message']+=str(i+1)+'/'+str(len(resp))+'\n'+str(resp[i]['tags'])+'\n\n' net_download(str(resp[i]['file_url']), '34/' + str(msg_id) + '_' + str(i) + '.jpg', '') outMsg['attachment'] += vk_upload( '34/' + str(msg_id) + '_' + str(i) + '.jpg', outMsg['peer_id'], 'photo') + ',' except Exception as e: outMsg['message'] += e
def get_rule_set(name, debug=False, all_rules=True): """ :param name: The filename of the .xml file to load in data/rules/ :param debug: :param all_rules: If False, only a small set of the rules are loaded. :return: A ruleset loaded from .xml. """ path = get_data_path('rules/' + name) if debug: print("Loading rules at " + path) obj = untangle.parse(path) ruleset = RuleSet(os.path.split(path)[1].split(".")[0]) if debug: print("Parsing races") for r in obj.rules.rosters.roster: if debug: print("-- Parsing " + str(r.name.cdata)) race = Race(r.name.cdata, [], (int)(r.rerollValue.cdata), (bool)(r.apothecary.cdata), (bool)(r.stakes.cdata)) for p in r.positions.position: position = Role(p.title.cdata, [race.name], (int)(p.ma.cdata), (int)(p.st.cdata), (int)(p.ag.cdata), (int)(p.av.cdata), [], (int)(p.cost.cdata), parse_sc(p.normal.cdata), parse_sc(p.double.cdata)) if len(p.skills) > 0: for skill_name in p.skills.skill: position.skills.append(parse_enum(Skill, skill_name.cdata)) race.roles.append(position) ruleset.races.append(race) if all_rules: if debug: print("Parsing star players") for star in obj.rules.stars.star: if debug: print("-- Parsing " + str(star.name.cdata)) role = Role(star.name.cdata, [], (int)(star.ma.cdata), (int)(star.st.cdata), (int)(star.ag.cdata), (int)(star.av.cdata), [], (int)(star.cost.cdata), (bool)(star.feeder.cdata), [], [], star_player=True) if len(star.skills) == 0: continue for skill_name in star.skills.skill: role.skills.append(parse_enum(Skill, skill_name.cdata)) for race_name in star.races.race: role.races.append(race_name.cdata) ruleset.star_players.append(role) if debug: print("Parsing inducements") for i in obj.rules.inducements.inducement: if debug: print("-- Parsing " + str(i["name"])) reduced = 0 if not "reduced" in i else i["reduced"] inducement = Inducement(i["name"], (int)(i.cdata), (int)(i["max"]), reduced=reduced) ruleset.inducements.append(inducement) if debug: print("Parsing SPP actions") for a in obj.rules.spp.action: if debug: print("-- Parsing " + str(a["name"])) ruleset.spp_actions[a["name"]] = (int)(a.cdata) if debug: print("Parsing SPP levels") for l in obj.rules.spp.level: if debug: print("-- Parsing " + str(l["name"])) ruleset.spp_levels[l["name"]] = (int)(l.cdata) if debug: print("Parsing improvements") for imp in obj.rules.improvements.improvement: if debug: print("-- Parsing " + str(imp["name"])) ruleset.improvements[imp["name"]] = (int)(imp.cdata) if debug: print("Parsing spiralling expenses") ruleset.se_start = (int)(obj.rules.spirallingExpenses.start.cdata) ruleset.se_interval = (int)( obj.rules.spirallingExpenses.interval.cdata) ruleset.se_pace = (int)(obj.rules.spirallingExpenses.pace.cdata) if debug: print("Done loading rules") return ruleset
def validacoes_r9002_evtret(arquivo): from emensageriapro.mensageiro.functions.funcoes_validacoes import validar_campo import untangle xml = ler_arquivo(arquivo).replace("s:", "") doc = untangle.parse(xml) validacoes_lista = [] xmlns = doc.Reinf['xmlns'].split('/') evtRet = doc.Reinf.evtRet #variaveis if 'ideEvento' in dir(evtRet.ideEvento): for ideEvento in evtRet.ideEvento: if 'perRef' in dir(ideEvento): validacoes_lista = validar_campo(validacoes_lista, 'ideEvento.perRef', ideEvento.perRef.cdata, 1, u'None') if 'ideContri' in dir(evtRet.ideContri): for ideContri in evtRet.ideContri: if 'tpInsc' in dir(ideContri): validacoes_lista = validar_campo(validacoes_lista, 'ideContri.tpInsc', ideContri.tpInsc.cdata, 1, u'1, 2') if 'nrInsc' in dir(ideContri): validacoes_lista = validar_campo(validacoes_lista, 'ideContri.nrInsc', ideContri.nrInsc.cdata, 1, u'None') if 'ideRecRetorno' in dir(evtRet.ideRecRetorno): for ideRecRetorno in evtRet.ideRecRetorno: if 'ideStatus' in dir(ideRecRetorno.ideStatus): for ideStatus in ideRecRetorno.ideStatus: if 'cdRetorno' in dir(ideStatus): validacoes_lista = validar_campo( validacoes_lista, 'ideStatus.cdRetorno', ideStatus.cdRetorno.cdata, 1, u'0, 1, 2') if 'descRetorno' in dir(ideStatus): validacoes_lista = validar_campo( validacoes_lista, 'ideStatus.descRetorno', ideStatus.descRetorno.cdata, 1, u'None') if 'regOcorrs' in dir(ideStatus.regOcorrs): for regOcorrs in ideStatus.regOcorrs: if 'tpOcorr' in dir(regOcorrs): validacoes_lista = validar_campo( validacoes_lista, 'regOcorrs.tpOcorr', regOcorrs.tpOcorr.cdata, 1, u'None') if 'localErroAviso' in dir(regOcorrs): validacoes_lista = validar_campo( validacoes_lista, 'regOcorrs.localErroAviso', regOcorrs.localErroAviso.cdata, 1, u'None') if 'codResp' in dir(regOcorrs): validacoes_lista = validar_campo( validacoes_lista, 'regOcorrs.codResp', regOcorrs.codResp.cdata, 1, u'None') if 'dscResp' in dir(regOcorrs): validacoes_lista = validar_campo( validacoes_lista, 'regOcorrs.dscResp', regOcorrs.dscResp.cdata, 1, u'None') if 'infoRecEv' in dir(evtRet.infoRecEv): for infoRecEv in evtRet.infoRecEv: if 'nrProtEntr' in dir(infoRecEv): validacoes_lista = validar_campo(validacoes_lista, 'infoRecEv.nrProtEntr', infoRecEv.nrProtEntr.cdata, 0, u'None') if 'dhProcess' in dir(infoRecEv): validacoes_lista = validar_campo(validacoes_lista, 'infoRecEv.dhProcess', infoRecEv.dhProcess.cdata, 1, u'None') if 'tpEv' in dir(infoRecEv): validacoes_lista = validar_campo(validacoes_lista, 'infoRecEv.tpEv', infoRecEv.tpEv.cdata, 1, u'None') if 'idEv' in dir(infoRecEv): validacoes_lista = validar_campo(validacoes_lista, 'infoRecEv.idEv', infoRecEv.idEv.cdata, 1, u'None') if 'hash' in dir(infoRecEv): validacoes_lista = validar_campo(validacoes_lista, 'infoRecEv.hash', infoRecEv.hash.cdata, 1, u'None') if 'infoTotal' in dir(evtRet.infoTotal): for infoTotal in evtRet.infoTotal: if 'nrRecArqBase' in dir(infoTotal): validacoes_lista = validar_campo(validacoes_lista, 'infoTotal.nrRecArqBase', infoTotal.nrRecArqBase.cdata, 0, u'None') if 'ideEstab' in dir(infoTotal.ideEstab): for ideEstab in infoTotal.ideEstab: if 'tpInsc' in dir(ideEstab): validacoes_lista = validar_campo( validacoes_lista, 'ideEstab.tpInsc', ideEstab.tpInsc.cdata, 1, u'1, 2') if 'nrInsc' in dir(ideEstab): validacoes_lista = validar_campo( validacoes_lista, 'ideEstab.nrInsc', ideEstab.nrInsc.cdata, 1, u'None') if 'totApurMen' in dir(ideEstab.totApurMen): for totApurMen in ideEstab.totApurMen: if 'CRMen' in dir(totApurMen): validacoes_lista = validar_campo( validacoes_lista, 'totApurMen.CRMen', totApurMen.CRMen.cdata, 1, u'None') if 'vlrBaseCRMen' in dir(totApurMen): validacoes_lista = validar_campo( validacoes_lista, 'totApurMen.vlrBaseCRMen', totApurMen.vlrBaseCRMen.cdata, 1, u'None') if 'vlrCRMen' in dir(totApurMen): validacoes_lista = validar_campo( validacoes_lista, 'totApurMen.vlrCRMen', totApurMen.vlrCRMen.cdata, 1, u'None') if 'vlrBaseCRMenSusp' in dir(totApurMen): validacoes_lista = validar_campo( validacoes_lista, 'totApurMen.vlrBaseCRMenSusp', totApurMen.vlrBaseCRMenSusp.cdata, 0, u'None') if 'vlrCRMenSusp' in dir(totApurMen): validacoes_lista = validar_campo( validacoes_lista, 'totApurMen.vlrCRMenSusp', totApurMen.vlrCRMenSusp.cdata, 0, u'None') if 'totApurQui' in dir(ideEstab.totApurQui): for totApurQui in ideEstab.totApurQui: if 'perApurQui' in dir(totApurQui): validacoes_lista = validar_campo( validacoes_lista, 'totApurQui.perApurQui', totApurQui.perApurQui.cdata, 1, u'1, 2') if 'CRQui' in dir(totApurQui): validacoes_lista = validar_campo( validacoes_lista, 'totApurQui.CRQui', totApurQui.CRQui.cdata, 1, u'None') if 'vlrBaseCRQui' in dir(totApurQui): validacoes_lista = validar_campo( validacoes_lista, 'totApurQui.vlrBaseCRQui', totApurQui.vlrBaseCRQui.cdata, 1, u'None') if 'vlrCRQui' in dir(totApurQui): validacoes_lista = validar_campo( validacoes_lista, 'totApurQui.vlrCRQui', totApurQui.vlrCRQui.cdata, 1, u'None') if 'vlrBaseCRQuiSusp' in dir(totApurQui): validacoes_lista = validar_campo( validacoes_lista, 'totApurQui.vlrBaseCRQuiSusp', totApurQui.vlrBaseCRQuiSusp.cdata, 0, u'None') if 'vlrCRQuiSusp' in dir(totApurQui): validacoes_lista = validar_campo( validacoes_lista, 'totApurQui.vlrCRQuiSusp', totApurQui.vlrCRQuiSusp.cdata, 0, u'None') if 'totApurDec' in dir(ideEstab.totApurDec): for totApurDec in ideEstab.totApurDec: if 'perApurDec' in dir(totApurDec): validacoes_lista = validar_campo( validacoes_lista, 'totApurDec.perApurDec', totApurDec.perApurDec.cdata, 1, u'1, 2, 3') if 'CRDec' in dir(totApurDec): validacoes_lista = validar_campo( validacoes_lista, 'totApurDec.CRDec', totApurDec.CRDec.cdata, 1, u'None') if 'vlrBaseCRDec' in dir(totApurDec): validacoes_lista = validar_campo( validacoes_lista, 'totApurDec.vlrBaseCRDec', totApurDec.vlrBaseCRDec.cdata, 1, u'None') if 'vlrCRDec' in dir(totApurDec): validacoes_lista = validar_campo( validacoes_lista, 'totApurDec.vlrCRDec', totApurDec.vlrCRDec.cdata, 1, u'None') if 'vlrBaseCRDecSusp' in dir(totApurDec): validacoes_lista = validar_campo( validacoes_lista, 'totApurDec.vlrBaseCRDecSusp', totApurDec.vlrBaseCRDecSusp.cdata, 0, u'None') if 'vlrCRDecSusp' in dir(totApurDec): validacoes_lista = validar_campo( validacoes_lista, 'totApurDec.vlrCRDecSusp', totApurDec.vlrCRDecSusp.cdata, 0, u'None') if 'totApurSem' in dir(ideEstab.totApurSem): for totApurSem in ideEstab.totApurSem: if 'perApurSem' in dir(totApurSem): validacoes_lista = validar_campo( validacoes_lista, 'totApurSem.perApurSem', totApurSem.perApurSem.cdata, 1, u'1, 2, 3, 4') if 'CRSem' in dir(totApurSem): validacoes_lista = validar_campo( validacoes_lista, 'totApurSem.CRSem', totApurSem.CRSem.cdata, 1, u'None') if 'vlrBaseCRSem' in dir(totApurSem): validacoes_lista = validar_campo( validacoes_lista, 'totApurSem.vlrBaseCRSem', totApurSem.vlrBaseCRSem.cdata, 1, u'None') if 'vlrCRSem' in dir(totApurSem): validacoes_lista = validar_campo( validacoes_lista, 'totApurSem.vlrCRSem', totApurSem.vlrCRSem.cdata, 1, u'None') if 'vlrBaseCRSemSusp' in dir(totApurSem): validacoes_lista = validar_campo( validacoes_lista, 'totApurSem.vlrBaseCRSemSusp', totApurSem.vlrBaseCRSemSusp.cdata, 0, u'None') if 'vlrCRSemSusp' in dir(totApurSem): validacoes_lista = validar_campo( validacoes_lista, 'totApurSem.vlrCRSemSusp', totApurSem.vlrCRSemSusp.cdata, 0, u'None') if 'totApurDia' in dir(ideEstab.totApurDia): for totApurDia in ideEstab.totApurDia: if 'perApurDia' in dir(totApurDia): validacoes_lista = validar_campo( validacoes_lista, 'totApurDia.perApurDia', totApurDia.perApurDia.cdata, 1, u'None') if 'CRDia' in dir(totApurDia): validacoes_lista = validar_campo( validacoes_lista, 'totApurDia.CRDia', totApurDia.CRDia.cdata, 1, u'None') if 'vlrBaseCRDia' in dir(totApurDia): validacoes_lista = validar_campo( validacoes_lista, 'totApurDia.vlrBaseCRDia', totApurDia.vlrBaseCRDia.cdata, 1, u'None') if 'vlrCRDia' in dir(totApurDia): validacoes_lista = validar_campo( validacoes_lista, 'totApurDia.vlrCRDia', totApurDia.vlrCRDia.cdata, 1, u'None') if 'vlrBaseCRDiaSusp' in dir(totApurDia): validacoes_lista = validar_campo( validacoes_lista, 'totApurDia.vlrBaseCRDiaSusp', totApurDia.vlrBaseCRDiaSusp.cdata, 0, u'None') if 'vlrCRDiaSusp' in dir(totApurDia): validacoes_lista = validar_campo( validacoes_lista, 'totApurDia.vlrCRDiaSusp', totApurDia.vlrCRDiaSusp.cdata, 0, u'None') return validacoes_lista
for svr in dictSvrs[key]: dbCN = getDbConn(svr, grp["id"]) dbConns.append(dbCN) result = {} result["datasource.connectionGroups"] = connGrps result["datasource.connections"] = dbConns return result #-- End of getDictSvrConns # Main program regsvrFilename = 'sample.regsvr' regsvrData = untangle.parse(regsvrFilename) docs = regsvrData.model.xs_bufferSchema.definitions.document.data.xs_schema.RegisteredServers_bufferData.instances dictDbConns = getDictDbConns(docs) dictForSqlOpsConf = convToSqlOpsStudioJSON(dictDbConns) jsonStr = json.dumps(dictForSqlOpsConf, indent=4) print(jsonStr) # output to a file with open("SqlOpsStudio.json", "w") as text_file: text_file.write(jsonStr) print("\n--- Successfully Completed ---\n")
def validacoes_s2220_evtmonit(arquivo): from emensageriapro.mensageiro.functions.funcoes_validacoes import validar_campo import untangle xml = ler_arquivo(arquivo).replace("s:", "") doc = untangle.parse(xml) validacoes_lista = [] xmlns = doc.eSocial['xmlns'].split('/') evtMonit = doc.eSocial.evtMonit #variaveis if 'ideEvento' in dir(evtMonit.ideEvento): for ideEvento in evtMonit.ideEvento: if 'indRetif' in dir(ideEvento): validacoes_lista = validar_campo(validacoes_lista, 'ideEvento.indRetif', ideEvento.indRetif.cdata, 1, u'1, 2') if 'nrRecibo' in dir(ideEvento): validacoes_lista = validar_campo(validacoes_lista, 'ideEvento.nrRecibo', ideEvento.nrRecibo.cdata, 0, u'None') if 'tpAmb' in dir(ideEvento): validacoes_lista = validar_campo(validacoes_lista, 'ideEvento.tpAmb', ideEvento.tpAmb.cdata, 1, u'1, 2') if 'procEmi' in dir(ideEvento): validacoes_lista = validar_campo(validacoes_lista, 'ideEvento.procEmi', ideEvento.procEmi.cdata, 1, u'1, 2, 3, 4, 5') if 'verProc' in dir(ideEvento): validacoes_lista = validar_campo(validacoes_lista, 'ideEvento.verProc', ideEvento.verProc.cdata, 1, u'None') if 'ideEmpregador' in dir(evtMonit.ideEmpregador): for ideEmpregador in evtMonit.ideEmpregador: if 'tpInsc' in dir(ideEmpregador): validacoes_lista = validar_campo(validacoes_lista, 'ideEmpregador.tpInsc', ideEmpregador.tpInsc.cdata, 1, u'1, 2, 3, 4, 5, 6') if 'nrInsc' in dir(ideEmpregador): validacoes_lista = validar_campo(validacoes_lista, 'ideEmpregador.nrInsc', ideEmpregador.nrInsc.cdata, 1, u'None') if 'ideVinculo' in dir(evtMonit.ideVinculo): for ideVinculo in evtMonit.ideVinculo: if 'cpfTrab' in dir(ideVinculo): validacoes_lista = validar_campo(validacoes_lista, 'ideVinculo.cpfTrab', ideVinculo.cpfTrab.cdata, 1, u'None') if 'nisTrab' in dir(ideVinculo): validacoes_lista = validar_campo(validacoes_lista, 'ideVinculo.nisTrab', ideVinculo.nisTrab.cdata, 0, u'None') if 'matricula' in dir(ideVinculo): validacoes_lista = validar_campo(validacoes_lista, 'ideVinculo.matricula', ideVinculo.matricula.cdata, 0, u'None') if 'codCateg' in dir(ideVinculo): validacoes_lista = validar_campo( validacoes_lista, 'ideVinculo.codCateg', ideVinculo.codCateg.cdata, 0, u'101, 102, 103, 104, 105, 106, 107, 108, 111, 201, 202, 301, 302, 303, 305, 306, 307, 308, 309, 401, 410, 701, 711, 712, 721, 722, 723, 731, 734, 738, 741, 751, 761, 771, 781, 901, 902, 903, 904, 905' ) if 'exMedOcup' in dir(evtMonit.exMedOcup): for exMedOcup in evtMonit.exMedOcup: if 'tpExameOcup' in dir(exMedOcup): validacoes_lista = validar_campo(validacoes_lista, 'exMedOcup.tpExameOcup', exMedOcup.tpExameOcup.cdata, 1, u'0, 1, 2, 3, 4, 9') if 'aso' in dir(exMedOcup.aso): for aso in exMedOcup.aso: if 'dtAso' in dir(aso): validacoes_lista = validar_campo( validacoes_lista, 'aso.dtAso', aso.dtAso.cdata, 1, u'None') if 'tpAso' in dir(aso): validacoes_lista = validar_campo( validacoes_lista, 'aso.tpAso', aso.tpAso.cdata, 1, u'0, 1, 2, 3, 4, 8') if 'resAso' in dir(aso): validacoes_lista = validar_campo( validacoes_lista, 'aso.resAso', aso.resAso.cdata, 1, u'1, 2') if 'exame' in dir(aso.exame): for exame in aso.exame: if 'dtExm' in dir(exame): validacoes_lista = validar_campo( validacoes_lista, 'exame.dtExm', exame.dtExm.cdata, 1, u'None') if 'procRealizado' in dir(exame): validacoes_lista = validar_campo( validacoes_lista, 'exame.procRealizado', exame.procRealizado.cdata, 1, u'CÓD., 0001, 0002, 0003, 0004, 0005, 0006, 0007, 0008, 0009, 0010, 1398, 1399, 0011, 0012, 0013, 0014, 0015, 0016, 0017, 0018, 0019, 0020, 0021, 0022, 0023, 0024, 0025, 0026, 0027, 0028, 0029, 0030, 0031, 0032, 0033, 0034, 0035, 0036, 0037, 0038, 0039, 0040, 0041, 0042, 0043, 0044, 0045, 0046, 0047, 0048, 0049, 0050, 0051, 0052, 0053, 0054, 0055, 0056, 0057, 0058, 0059, 0060, 0061, 0062, 0063, 0064, 0065, 0066, 0067, 0068, 0069, 0070, 0071, 0072, 0073, 0074, 0075, 0076, 0077, 0078, 0079, 0080, 0081, 0082, 0083, 0084, 0085, 0086, 0087, 0088, 0089, 0090, 0091, 0092, 0093, 0094, 0095, 0096, 0097, 0098, 0099, 0100, 0101, 0102, 0103, 0104, 0105, 0106, 0107, 0108, 0109, 0110, 0111, 0112, 0113, 0114, 0115, 0116, 0117, 0118, 0119, 0120, 0121, 0122, 0123, 0124, 0125, 0126, 0127, 0128, 0129, 0130, 0131, 0132, 0133, 0134, 0135, 0136, 0137, 0138, 1400, 0139, 0140, 0141, 1401, 0142, 0143, 0144, 0145, 0146, 0147, 0148, 0149, 0150, 0151, 0152, 0153, 0154, 0155, 0156, 0157, 0158, 0159, 0160, 0161, 0162, 0163, 0164, 0165, 0166, 0167, 0168, 0169, 0170, 0171, 0172, 0173, 0174, 0175, 0176, 0177, 0178, 0179, 0180, 0181, 0182, 0183, 0184, 0185, 0186, 0187, 0188, 0189, 0190, 0191, 0192, 0193, 0194, 0195, 0196, 0197, 0198, 0199, 0200, 0201, 0202, 0203, 0204, 0205, 0206, 0207, 0208, 0209, 0210, 0211, 0212, 0213, 0214, 0215, 0216, 0217, 0218, 1402, 0219, 0220, 0221, 0222, 0223, 0224, 0225, 0226, 0227, 0228, 0229, 0230, 0231, 0232, 0233, 0234, 0235, 0236, 0237, 0238, 0239, 0240, 0241, 0242, 0243, 0244, 0245, 0246, 0247, 0248, 0249, 0250, 0251, 0252, 0253, 0254, 0255, 0256, 0257, 0258, 0259, 0260, 0261, 0262, 0263, 0264, 0265, 0266, 0267, 0268, 0270, 0271, 0272, 0273, 0274, 0275, 0276, 0277, 0278, 0279, 0280, 0281, 0282, 0283, 0284, 0285, 0286, 0287, 0288, 0289, 0290, 0291, 0292, 0293, 0294, 0295, 0296, 0297, 0298, 0299, 0300, 0301, 0302, 0303, 0304, 0305, 0306, 0307, 0308, 0309, 0310, 0311, 0312, 0313, 0314, 0315, 0316, 0317, 0318, 0319, 0320, 0321, 0322, 0323, 0324, 0325, 0326, 0327, 0328, 0329, 0330, 0331, 0332, 0333, 0334, 0335, 0336, 0337, 0338, 0339, 0340, 0341, 0342, 0343, 0344, 0345, 0346, 0347, 0348, 0349, 0350, 0351, 0352, 0353, 0354, 0355, 0356, 0357, 0358, 0359, 0360, 0361, 0362, 0363, 0364, 0365, 0366, 0367, 0368, 0369, 0370, 0371, 0372, 0373, 0374, 0375, 0376, 0377, 0378, 0379, 0380, 0381, 0382, 0383, 0384, 0385, 0386, 0387, 0388, 0389, 0390, 0391, 0392, 0393, 0394, 0395, 0396, 0397, 0398, 0399, 0400, 0401, 0402, 0403, 0404, 0405, 0406, 0407, 0408, 0409, 0410, 0411, 0412, 0413, 0414, 0415, 0416, 0417, 0418, 0419, 0420, 0421, 0422, 0423, 0424, 0425, 0426, 0427, 0428, 0429, 0430, 0431, 0432, 0433, 0434, 0435, 0436, 0437, 0438, 0439, 0440, 0441, 0442, 0443, 0444, 0445, 0446, 0447, 0448, 0449, 0450, 0451, 0452, 0453, 0454, 0455, 0456, 0457, 0458, 0459, 0460, 0461, 0462, 0463, 0464, 0465, 0466, 0467, 0468, 0469, 0470, 0471, 0472, 0473, 0474, 0475, 0476, 0477, 1403, 0478, 0479, 0480, 0481, 0482, 0483, 0484, 0485, 0486, 0487, 0488, 0489, 0490, 0491, 0492, 0493, 0494, 0495, 0496, 0497, 0498, 0499, 0500, 0501, 0502, 0503, 0504, 0505, 0506, 0507, 0508, 0509, 0510, 0511, 0512, 0513, 0514, 0515, 0516, 0517, 0518, 0519, 0520, 0521, 0522, 0523, 0524, 0525, 0526, 0527, 0528, 0529, 0530, 0531, 0532, 0533, 0534, 0535, 0536, 0537, 0538, 0539, 0540, 0541, 0542, 0543, 0544, 0545, 0546, 0547, 0548, 0549, 0550, 0551, 0552, 0553, 0554, 0555, 0556, 0557, 0558, 0559, 0560, 0561, 0562, 0563, 0564, 0565, 0566, 0567, 0568, 0569, 0570, 0571, 0572, 0573, 0574, 0575, 0576, 0577, 0578, 0579, 0580, 0581, 0582, 0583, 0584, 0585, 0586, 0587, 0588, 0589, 0590, 0591, 0592, 0593, 0594, 0595, 0597, 0598, 0599, 0600, 0601, 0602, 0603, 0604, 0605, 0606, 0607, 0608, 0609, 0610, 0611, 0612, 0613, 0614, 0615, 0616, 0617, 0618, 0619, 0620, 0621, 0622, 0623, 0624, 0625, 0626, 0627, 0628, 0629, 0630, 0631, 0632, 0633, 0634, 0635, 0636, 0637, 0638, 0639, 1404, 0640, 0641, 0642, 0643, 0644, 0645, 0646, 0647, 0648, 0649, 0650, 0651, 0652, 0653, 0654, 0655, 0656, 0657, 0658, 0659, 0660, 0661, 0662, 0663, 0664, 0665, 0666, 0667, 0668, 0669, 0670, 0671, 0672, 0673, 0674, 0675, 0676, 0677, 0678, 0679, 0680, 0681, 0682, 0683, 0684, 0685, 0686, 0687, 0688, 0689, 0690, 0691, 0692, 0693, 0694, 0695, 0696, 0697, 0698, 0699, 0700, 0701, 0702, 0703, 1405, 0704, 0705, 0706, 0707, 0708, 0709, 0710, 0711, 0712, 0713, 0714, 0715, 0716, 0717, 0718, 0719, 0720, 0721, 0722, 0723, 0724, 0725, 0726, 0727, 0728, 0729, 0730, 0731, 0732, 0733, 0734, 0735, 0736, 0737, 0738, 0739, 0740, 0741, 0742, 0743, 0744, 0745, 0746, 0747, 0748, 0749, 0750, 0751, 0752, 0753, 0754, 0755, 0756, 0757, 0758, 0759, 0760, 0761, 0762, 0763, 0764, 0765, 0766, 0767, 0768, 0769, 0770, 0771, 0772, 0773, 0774, 0775, 0776, 0777, 0778, 0779, 0780, 0781, 0782, 0783, 0784, 0785, 0786, 0787, 0788, 0789, 0790, 0791, 0792, 0793, 0794, 0795, 0796, 0797, 0798, 0799, 1406, 0800, 0801, 0802, 0803, 0804, 0806, 0807, 0808, 0809, 0810, 0811, 0812, 0813, 0814, 0815, 0816, 0817, 0818, 0819, 0820, 0821, 0822, 0823, 0824, 0825, 0826, 0827, 0828, 0829, 0830, 0831, 0832, 0833, 0834, 0835, 0836, 0837, 0838, 0839, 0840, 0841, 0842, 0843, 0844, 0845, 0846, 0847, 0848, 0849, 0850, 0851, 0852, 0853, 0854, 0855, 0856, 0857, 0858, 0859, 0860, 0861, 0862, 0863, 0864, 0865, 0866, 0867, 0868, 0869, 0870, 0871, 0872, 0873, 0874, 0875, 0876, 0877, 0878, 1407, 1408, 1409, 1410, 1411, 0879, 0880, 0881, 0882, 0883, 0884, 0885, 0886, 0887, 0888, 0889, 0890, 1412, 0891, 0892, 0893, 0894, 0895, 0896, 0897, 0898, 0899, 0900, 0901, 0902, 0903, 0904, 0905, 0906, 0907, 0908, 0909, 0910, 0911, 0912, 0913, 0914, 0915, 0916, 0917, 0918, 0919, 0920, 0921, 0922, 0923, 0924, 0925, 0926, 0927, 0928, 0929, 0930, 0931, 0932, 0933, 0934, 0935, 0936, 0937, 0938, 0939, 0940, 0941, 0942, 0943, 0944, 0945, 0946, 0947, 0948, 0949, 0950, 0951, 0952, 0953, 0954, 0955, 0956, 0957, 0958, 0959, 0960, 0961, 0962, 0963, 0964, 0965, 0966, 0967, 0968, 0969, 0970, 0971, 0972, 0973, 0974, 0975, 0976, 0977, 1413, 0978, 0979, 0980, 0981, 0982, 0983, 0984, 0985, 0986, 0987, 0988, 0989, 0990, 0991, 0992, 0993, 0994, 0995, 0996, 0997, 0998, 0999, 1000, 1001, 1002, 1003, 1004, 1005, 1006, 1007, 1008, 1009, 1010, 1011, 1012, 1013, 1014, 1015, 1016, 1017, 1018, 1019, 1020, 1021, 1022, 1023, 1024, 1025, 1026, 1027, 1028, 1029, 1030, 1031, 1032, 1033, 1034, 1035, 1036, 1037, 1038, 1039, 1040, 1041, 1042, 1043, 1044, 1045, 1046, 1047, 1048, 1049, 1050, 1051, 1052, 1053, 1054, 1055, 1056, 1057, 1058, 1059, 1060, 1414, 1061, 1062, 1063, 1064, 1065, 1066, 1067, 1068, 1069, 1070, 1071, 1072, 1073, 1074, 1075, 1076, 1077, 1078, 1415, 1079, 1080, 1081, 1082, 1083, 1084, 1085, 1086, 1087, 1088, 1089, 1090, 1091, 1092, 1093, 1094, 1095, 1096, 1097, 1098, 1099, 1100, 1101, 1102, 1103, 1104, 1105, 1106, 1107, 1108, 1109, 1110, 1111, 1112, 1113, 1114, 1115, 1116, 1117, 1118, 1119, 1120, 1121, 1122, 1123, 1124, 1125, 1126, 1127, 1128, 1129, 1130, 1131, 1132, 1133, 1134, 1135, 1136, 1137, 1138, 1139, 1140, 1141, 1142, 1143, 1144, 1145, 1146, 1147, 1148, 1149, 1150, 1151, 1152, 1153, 1154, 1155, 1156, 1157, 1158, 1159, 1160, 1161, 1162, 1163, 1164, 1165, 1166, 1167, 1168, 1169, 1170, 1171, 1172, 1173, 1174, 1175, 1176, 1177, 1178, 1179, 1180, 1181, 1182, 1183, 1184, 1185, 1186, 1187, 1188, 1189, 1190, 1191, 1416, 1192, 1193, 1194, 1195, 1196, 1197, 1198, 1199, 1200, 1201, 1202, 1203, 1204, 1205, 1206, 1207, 1208, 1209, 1210, 1211, 1212, 1213, 1214, 1215, 1216, 1217, 1218, 1219, 1220, 1221, 1222, 1223, 1224, 1225, 1226, 1227, 1228, 1229, 1230, 1231, 1232, 1233, 1234, 1235, 1236, 1237, 1238, 1239, 1240, 1241, 1242, 1243, 1244, 1245, 1246, 1247, 1248, 1249, 1250, 1251, 1252, 1253, 1254, 1255, 1256, 1257, 1258, 1259, 1260, 1261, 1262, 1263, 1264, 1265, 1266, 1267, 1268, 1269, 1270, 1271, 1272, 1273, 1274, 1275, 1276, 1277, 1278, 1279, 1280, 1281, 1282, 1283, 1284, 1285, 1286, 1287, 1288, 1289, 1290, 1291, 1292, 1293, 1294, 1295, 1296, 1297, 1298, 1299, 1300, 1301, 1302, 1303, 1304, 1305, 1306, 1307, 1308, 1309, 1310, 1311, 1312, 1313, 1314, 1315, 1316, 1317, 1318, 1319, 1320, 1321, 1322, 1323, 1324, 1325, 1326, 1327, 1328, 1329, 1330, 1331, 1332, 1333, 1334, 1335, 1336, 1337, 1338, 1339, 1340, 1341, 1342, 1343, 1344, 1345, 1346, 1347, 1348, 1349, 1350, 1351, 1352, 1353, 1354, 1355, 1356, 1357, 1358, 1359, 1360, 1361, 1362, 1363, 1364, 1365, 1366, 1367, 1368, 1417, 1369, 1370, 1371, 1372, 1373, 1374, 1375, 1376, 1418, 1377, 1378, 1379, 1380, 1381, 1382, 1383, 1384, 1385, 1386, 1387, 1388, 1389, 1390, 1391, 1392, 1393, 1394, 1395, 1396, 1397, 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 9999' ) if 'obsProc' in dir(exame): validacoes_lista = validar_campo( validacoes_lista, 'exame.obsProc', exame.obsProc.cdata, 0, u'None') if 'interprExm' in dir(exame): validacoes_lista = validar_campo( validacoes_lista, 'exame.interprExm', exame.interprExm.cdata, 1, u'1, 2, 3') if 'ordExame' in dir(exame): validacoes_lista = validar_campo( validacoes_lista, 'exame.ordExame', exame.ordExame.cdata, 1, u'1, 2') if 'dtIniMonit' in dir(exame): validacoes_lista = validar_campo( validacoes_lista, 'exame.dtIniMonit', exame.dtIniMonit.cdata, 1, u'None') if 'dtFimMonit' in dir(exame): validacoes_lista = validar_campo( validacoes_lista, 'exame.dtFimMonit', exame.dtFimMonit.cdata, 0, u'None') if 'indResult' in dir(exame): validacoes_lista = validar_campo( validacoes_lista, 'exame.indResult', exame.indResult.cdata, 0, u'1, 2, 3, 4') if 'medico' in dir(aso.medico): for medico in aso.medico: if 'cpfMed' in dir(medico): validacoes_lista = validar_campo( validacoes_lista, 'medico.cpfMed', medico.cpfMed.cdata, 0, u'None') if 'nisMed' in dir(medico): validacoes_lista = validar_campo( validacoes_lista, 'medico.nisMed', medico.nisMed.cdata, 0, u'None') if 'nmMed' in dir(medico): validacoes_lista = validar_campo( validacoes_lista, 'medico.nmMed', medico.nmMed.cdata, 1, u'None') if 'nrCRM' in dir(medico): validacoes_lista = validar_campo( validacoes_lista, 'medico.nrCRM', medico.nrCRM.cdata, 1, u'None') if 'ufCRM' in dir(medico): validacoes_lista = validar_campo( validacoes_lista, 'medico.ufCRM', medico.ufCRM.cdata, 1, u'None') if 'respMonit' in dir(exMedOcup.respMonit): for respMonit in exMedOcup.respMonit: if 'nisResp' in dir(respMonit): validacoes_lista = validar_campo( validacoes_lista, 'respMonit.nisResp', respMonit.nisResp.cdata, 1, u'None') if 'nrConsClasse' in dir(respMonit): validacoes_lista = validar_campo( validacoes_lista, 'respMonit.nrConsClasse', respMonit.nrConsClasse.cdata, 1, u'None') if 'ufConsClasse' in dir(respMonit): validacoes_lista = validar_campo( validacoes_lista, 'respMonit.ufConsClasse', respMonit.ufConsClasse.cdata, 0, u'None') if 'cpfResp' in dir(respMonit): validacoes_lista = validar_campo( validacoes_lista, 'respMonit.cpfResp', respMonit.cpfResp.cdata, 0, u'None') if 'nmResp' in dir(respMonit): validacoes_lista = validar_campo( validacoes_lista, 'respMonit.nmResp', respMonit.nmResp.cdata, 1, u'None') if 'nrCRM' in dir(respMonit): validacoes_lista = validar_campo( validacoes_lista, 'respMonit.nrCRM', respMonit.nrCRM.cdata, 1, u'None') if 'ufCRM' in dir(respMonit): validacoes_lista = validar_campo( validacoes_lista, 'respMonit.ufCRM', respMonit.ufCRM.cdata, 1, u'None') return validacoes_lista
def validacoes_s1200_evtremun(arquivo): from emensageriapro.mensageiro.functions.funcoes_validacoes import validar_campo import untangle xml = ler_arquivo(arquivo).replace("s:", "") doc = untangle.parse(xml) validacoes_lista = [] xmlns = doc.eSocial['xmlns'].split('/') evtRemun = doc.eSocial.evtRemun if 'indRetif' in dir(evtRemun.ideEvento): validacoes_lista = validar_campo(validacoes_lista, 'evtRemun.ideEvento.indRetif', evtRemun.ideEvento.indRetif.cdata, 1, '1;2') if 'nrRecibo' in dir(evtRemun.ideEvento): validacoes_lista = validar_campo(validacoes_lista, 'evtRemun.ideEvento.nrRecibo', evtRemun.ideEvento.nrRecibo.cdata, 0, '') if 'indApuracao' in dir(evtRemun.ideEvento): validacoes_lista = validar_campo(validacoes_lista, 'evtRemun.ideEvento.indApuracao', evtRemun.ideEvento.indApuracao.cdata, 1, '1;2') if 'perApur' in dir(evtRemun.ideEvento): validacoes_lista = validar_campo(validacoes_lista, 'evtRemun.ideEvento.perApur', evtRemun.ideEvento.perApur.cdata, 1, '') if 'tpAmb' in dir(evtRemun.ideEvento): validacoes_lista = validar_campo(validacoes_lista, 'evtRemun.ideEvento.tpAmb', evtRemun.ideEvento.tpAmb.cdata, 1, '1;2') if 'procEmi' in dir(evtRemun.ideEvento): validacoes_lista = validar_campo(validacoes_lista, 'evtRemun.ideEvento.procEmi', evtRemun.ideEvento.procEmi.cdata, 1, '1;2;3;4;5') if 'verProc' in dir(evtRemun.ideEvento): validacoes_lista = validar_campo(validacoes_lista, 'evtRemun.ideEvento.verProc', evtRemun.ideEvento.verProc.cdata, 1, '') if 'tpInsc' in dir(evtRemun.ideEmpregador): validacoes_lista = validar_campo(validacoes_lista, 'evtRemun.ideEmpregador.tpInsc', evtRemun.ideEmpregador.tpInsc.cdata, 1, '1;2;3;4') if 'nrInsc' in dir(evtRemun.ideEmpregador): validacoes_lista = validar_campo(validacoes_lista, 'evtRemun.ideEmpregador.nrInsc', evtRemun.ideEmpregador.nrInsc.cdata, 1, '') if 'cpfTrab' in dir(evtRemun.ideTrabalhador): validacoes_lista = validar_campo(validacoes_lista, 'evtRemun.ideTrabalhador.cpfTrab', evtRemun.ideTrabalhador.cpfTrab.cdata, 1, '') if 'nisTrab' in dir(evtRemun.ideTrabalhador): validacoes_lista = validar_campo(validacoes_lista, 'evtRemun.ideTrabalhador.nisTrab', evtRemun.ideTrabalhador.nisTrab.cdata, 0, '') if 'infoMV' in dir(evtRemun.ideTrabalhador): for infoMV in evtRemun.ideTrabalhador.infoMV: if 'indMV' in dir(infoMV): validacoes_lista = validar_campo(validacoes_lista, 'infoMV.indMV', infoMV.indMV.cdata, 1, '1;2;3') if 'remunOutrEmpr' in dir(infoMV): for remunOutrEmpr in infoMV.remunOutrEmpr: if 'tpInsc' in dir(remunOutrEmpr): validacoes_lista = validar_campo( validacoes_lista, 'remunOutrEmpr.tpInsc', remunOutrEmpr.tpInsc.cdata, 1, '1;2;3;4') if 'nrInsc' in dir(remunOutrEmpr): validacoes_lista = validar_campo( validacoes_lista, 'remunOutrEmpr.nrInsc', remunOutrEmpr.nrInsc.cdata, 1, '') if 'codCateg' in dir(remunOutrEmpr): validacoes_lista = validar_campo( validacoes_lista, 'remunOutrEmpr.codCateg', remunOutrEmpr.codCateg.cdata, 1, '101;102;103;104;105;106;111;201;202;301;302;303;305;306;307;308;309;401;410;701;711;712;721;722;723;731;734;738;741;751;761;771;781;901;902;903;904;905' ) if 'vlrRemunOE' in dir(remunOutrEmpr): validacoes_lista = validar_campo( validacoes_lista, 'remunOutrEmpr.vlrRemunOE', remunOutrEmpr.vlrRemunOE.cdata, 1, '') if 'infoComplem' in dir(evtRemun.ideTrabalhador): for infoComplem in evtRemun.ideTrabalhador.infoComplem: if 'nmTrab' in dir(infoComplem): validacoes_lista = validar_campo(validacoes_lista, 'infoComplem.nmTrab', infoComplem.nmTrab.cdata, 1, '') if 'dtNascto' in dir(infoComplem): validacoes_lista = validar_campo(validacoes_lista, 'infoComplem.dtNascto', infoComplem.dtNascto.cdata, 1, '') if 'sucessaoVinc' in dir(infoComplem): for sucessaoVinc in infoComplem.sucessaoVinc: if 'tpInscAnt' in dir(sucessaoVinc): validacoes_lista = validar_campo( validacoes_lista, 'sucessaoVinc.tpInscAnt', sucessaoVinc.tpInscAnt.cdata, 1, '1;2') if 'cnpjEmpregAnt' in dir(sucessaoVinc): validacoes_lista = validar_campo( validacoes_lista, 'sucessaoVinc.cnpjEmpregAnt', sucessaoVinc.cnpjEmpregAnt.cdata, 1, '') if 'matricAnt' in dir(sucessaoVinc): validacoes_lista = validar_campo( validacoes_lista, 'sucessaoVinc.matricAnt', sucessaoVinc.matricAnt.cdata, 0, '') if 'dtAdm' in dir(sucessaoVinc): validacoes_lista = validar_campo( validacoes_lista, 'sucessaoVinc.dtAdm', sucessaoVinc.dtAdm.cdata, 1, '') if 'observacao' in dir(sucessaoVinc): validacoes_lista = validar_campo( validacoes_lista, 'sucessaoVinc.observacao', sucessaoVinc.observacao.cdata, 0, '') if 'procJudTrab' in dir(evtRemun.ideTrabalhador): for procJudTrab in evtRemun.ideTrabalhador.procJudTrab: if 'tpTrib' in dir(procJudTrab): validacoes_lista = validar_campo(validacoes_lista, 'procJudTrab.tpTrib', procJudTrab.tpTrib.cdata, 1, '1;2;3;4') if 'nrProcJud' in dir(procJudTrab): validacoes_lista = validar_campo(validacoes_lista, 'procJudTrab.nrProcJud', procJudTrab.nrProcJud.cdata, 1, '') if 'codSusp' in dir(procJudTrab): validacoes_lista = validar_campo(validacoes_lista, 'procJudTrab.codSusp', procJudTrab.codSusp.cdata, 0, '') if 'infoInterm' in dir(evtRemun.ideTrabalhador): for infoInterm in evtRemun.ideTrabalhador.infoInterm: if 'qtdDiasInterm' in dir(infoInterm): validacoes_lista = validar_campo( validacoes_lista, 'infoInterm.qtdDiasInterm', infoInterm.qtdDiasInterm.cdata, 1, '') if 'dmDev' in dir(evtRemun): for dmDev in evtRemun.dmDev: if 'ideDmDev' in dir(dmDev): validacoes_lista = validar_campo(validacoes_lista, 'dmDev.ideDmDev', dmDev.ideDmDev.cdata, 1, '') if 'codCateg' in dir(dmDev): validacoes_lista = validar_campo( validacoes_lista, 'dmDev.codCateg', dmDev.codCateg.cdata, 1, '101;102;103;104;105;106;111;201;202;301;302;303;305;306;307;308;309;401;410;701;711;712;721;722;723;731;734;738;741;751;761;771;781;901;902;903;904;905' ) if 'ideEstabLot' in dir(dmDev.infoPerApur): for ideEstabLot in dmDev.infoPerApur.ideEstabLot: if 'tpInsc' in dir(ideEstabLot): validacoes_lista = validar_campo( validacoes_lista, 'ideEstabLot.tpInsc', ideEstabLot.tpInsc.cdata, 1, '1;2;3;4') if 'nrInsc' in dir(ideEstabLot): validacoes_lista = validar_campo( validacoes_lista, 'ideEstabLot.nrInsc', ideEstabLot.nrInsc.cdata, 1, '') if 'codLotacao' in dir(ideEstabLot): validacoes_lista = validar_campo( validacoes_lista, 'ideEstabLot.codLotacao', ideEstabLot.codLotacao.cdata, 1, '') if 'qtdDiasAv' in dir(ideEstabLot): validacoes_lista = validar_campo( validacoes_lista, 'ideEstabLot.qtdDiasAv', ideEstabLot.qtdDiasAv.cdata, 0, '') if 'ideADC' in dir(dmDev.infoPerAnt): for ideADC in dmDev.infoPerAnt.ideADC: if 'dtAcConv' in dir(ideADC): validacoes_lista = validar_campo( validacoes_lista, 'ideADC.dtAcConv', ideADC.dtAcConv.cdata, 0, '') if 'tpAcConv' in dir(ideADC): validacoes_lista = validar_campo( validacoes_lista, 'ideADC.tpAcConv', ideADC.tpAcConv.cdata, 1, 'A;B;C;D;E') if 'compAcConv' in dir(ideADC): validacoes_lista = validar_campo( validacoes_lista, 'ideADC.compAcConv', ideADC.compAcConv.cdata, 0, '') if 'dtEfAcConv' in dir(ideADC): validacoes_lista = validar_campo( validacoes_lista, 'ideADC.dtEfAcConv', ideADC.dtEfAcConv.cdata, 0, '') if 'dsc' in dir(ideADC): validacoes_lista = validar_campo( validacoes_lista, 'ideADC.dsc', ideADC.dsc.cdata, 1, '') if 'remunSuc' in dir(ideADC): validacoes_lista = validar_campo( validacoes_lista, 'ideADC.remunSuc', ideADC.remunSuc.cdata, 1, 'S;N') if 'infoComplCont' in dir(dmDev): for infoComplCont in dmDev.infoComplCont: if 'codCBO' in dir(infoComplCont): validacoes_lista = validar_campo( validacoes_lista, 'infoComplCont.codCBO', infoComplCont.codCBO.cdata, 1, '') if 'natAtividade' in dir(infoComplCont): validacoes_lista = validar_campo( validacoes_lista, 'infoComplCont.natAtividade', infoComplCont.natAtividade.cdata, 0, '') if 'qtdDiasTrab' in dir(infoComplCont): validacoes_lista = validar_campo( validacoes_lista, 'infoComplCont.qtdDiasTrab', infoComplCont.qtdDiasTrab.cdata, 0, '') return validacoes_lista
def read_s1005_evttabestab(dados, arquivo, validar=False): import untangle xml = ler_arquivo(arquivo).replace("s:", "") doc = untangle.parse(xml) s1005_evttabestab_dados = {} xmlns = doc.eSocial['xmlns'].split('/') if validar: s1005_evttabestab_dados['status'] = 1 else: s1005_evttabestab_dados['status'] = 0 s1005_evttabestab_dados['versao'] = xmlns[len(xmlns)-1] s1005_evttabestab_dados['identidade'] = doc.eSocial.evtTabEstab['Id'] # verificacao = executar_sql("""SELECT count(*) # FROM public.transmissor_eventos_esocial WHERE identidade = '%s'; # """ % s1005_evttabestab_dados['identidade'], True) # if validar and verificacao[0][0] != 0: # return False s1005_evttabestab_dados['processamento_codigo_resposta'] = 1 evtTabEstab = doc.eSocial.evtTabEstab if 'tpAmb' in dir(evtTabEstab.ideEvento): s1005_evttabestab_dados['tpamb'] = evtTabEstab.ideEvento.tpAmb.cdata if 'procEmi' in dir(evtTabEstab.ideEvento): s1005_evttabestab_dados['procemi'] = evtTabEstab.ideEvento.procEmi.cdata if 'verProc' in dir(evtTabEstab.ideEvento): s1005_evttabestab_dados['verproc'] = evtTabEstab.ideEvento.verProc.cdata if 'tpInsc' in dir(evtTabEstab.ideEmpregador): s1005_evttabestab_dados['tpinsc'] = evtTabEstab.ideEmpregador.tpInsc.cdata if 'nrInsc' in dir(evtTabEstab.ideEmpregador): s1005_evttabestab_dados['nrinsc'] = evtTabEstab.ideEmpregador.nrInsc.cdata if 'inclusao' in dir(evtTabEstab.infoEstab): s1005_evttabestab_dados['operacao'] = 1 elif 'alteracao' in dir(evtTabEstab.infoEstab): s1005_evttabestab_dados['operacao'] = 2 elif 'exclusao' in dir(evtTabEstab.infoEstab): s1005_evttabestab_dados['operacao'] = 3 #print dados insert = create_insert('s1005_evttabestab', s1005_evttabestab_dados) resp = executar_sql(insert, True) s1005_evttabestab_id = resp[0][0] dados['evento'] = 's1005' dados['identidade'] = s1005_evttabestab_id dados['identidade_evento'] = doc.eSocial.evtTabEstab['Id'] dados['status'] = 1 if 'inclusao' in dir(evtTabEstab.infoEstab): for inclusao in evtTabEstab.infoEstab.inclusao: s1005_inclusao_dados = {} s1005_inclusao_dados['s1005_evttabestab_id'] = s1005_evttabestab_id if 'tpInsc' in dir(inclusao.ideEstab): s1005_inclusao_dados['tpinsc'] = inclusao.ideEstab.tpInsc.cdata if 'nrInsc' in dir(inclusao.ideEstab): s1005_inclusao_dados['nrinsc'] = inclusao.ideEstab.nrInsc.cdata if 'iniValid' in dir(inclusao.ideEstab): s1005_inclusao_dados['inivalid'] = inclusao.ideEstab.iniValid.cdata if 'fimValid' in dir(inclusao.ideEstab): s1005_inclusao_dados['fimvalid'] = inclusao.ideEstab.fimValid.cdata if 'cnaePrep' in dir(inclusao.dadosEstab): s1005_inclusao_dados['cnaeprep'] = inclusao.dadosEstab.cnaePrep.cdata if 'aliqRat' in dir(inclusao.dadosEstab.aliqGilrat): s1005_inclusao_dados['aliqrat'] = inclusao.dadosEstab.aliqGilrat.aliqRat.cdata if 'fap' in dir(inclusao.dadosEstab.aliqGilrat): s1005_inclusao_dados['fap'] = inclusao.dadosEstab.aliqGilrat.fap.cdata if 'aliqRatAjust' in dir(inclusao.dadosEstab.aliqGilrat): s1005_inclusao_dados['aliqratajust'] = inclusao.dadosEstab.aliqGilrat.aliqRatAjust.cdata if 'regPt' in dir(inclusao.dadosEstab.infoTrab): s1005_inclusao_dados['regpt'] = inclusao.dadosEstab.infoTrab.regPt.cdata if 'contApr' in dir(inclusao.dadosEstab.infoTrab.infoApr): s1005_inclusao_dados['contapr'] = inclusao.dadosEstab.infoTrab.infoApr.contApr.cdata if 'nrProcJud' in dir(inclusao.dadosEstab.infoTrab.infoApr): s1005_inclusao_dados['nrprocjud'] = inclusao.dadosEstab.infoTrab.infoApr.nrProcJud.cdata if 'contEntEd' in dir(inclusao.dadosEstab.infoTrab.infoApr): s1005_inclusao_dados['contented'] = inclusao.dadosEstab.infoTrab.infoApr.contEntEd.cdata insert = create_insert('s1005_inclusao', s1005_inclusao_dados) resp = executar_sql(insert, True) s1005_inclusao_id = resp[0][0] #print s1005_inclusao_id if 'procAdmJudRat' in dir(inclusao.dadosEstab.aliqGilrat): for procAdmJudRat in inclusao.dadosEstab.aliqGilrat.procAdmJudRat: s1005_inclusao_procadmjudrat_dados = {} s1005_inclusao_procadmjudrat_dados['s1005_inclusao_id'] = s1005_inclusao_id if 'tpProc' in dir(procAdmJudRat): s1005_inclusao_procadmjudrat_dados['tpproc'] = procAdmJudRat.tpProc.cdata if 'nrProc' in dir(procAdmJudRat): s1005_inclusao_procadmjudrat_dados['nrproc'] = procAdmJudRat.nrProc.cdata if 'codSusp' in dir(procAdmJudRat): s1005_inclusao_procadmjudrat_dados['codsusp'] = procAdmJudRat.codSusp.cdata insert = create_insert('s1005_inclusao_procadmjudrat', s1005_inclusao_procadmjudrat_dados) resp = executar_sql(insert, True) s1005_inclusao_procadmjudrat_id = resp[0][0] #print s1005_inclusao_procadmjudrat_id if 'procAdmJudFap' in dir(inclusao.dadosEstab.aliqGilrat): for procAdmJudFap in inclusao.dadosEstab.aliqGilrat.procAdmJudFap: s1005_inclusao_procadmjudfap_dados = {} s1005_inclusao_procadmjudfap_dados['s1005_inclusao_id'] = s1005_inclusao_id if 'tpProc' in dir(procAdmJudFap): s1005_inclusao_procadmjudfap_dados['tpproc'] = procAdmJudFap.tpProc.cdata if 'nrProc' in dir(procAdmJudFap): s1005_inclusao_procadmjudfap_dados['nrproc'] = procAdmJudFap.nrProc.cdata if 'codSusp' in dir(procAdmJudFap): s1005_inclusao_procadmjudfap_dados['codsusp'] = procAdmJudFap.codSusp.cdata insert = create_insert('s1005_inclusao_procadmjudfap', s1005_inclusao_procadmjudfap_dados) resp = executar_sql(insert, True) s1005_inclusao_procadmjudfap_id = resp[0][0] #print s1005_inclusao_procadmjudfap_id if 'infoCaepf' in dir(inclusao.dadosEstab): for infoCaepf in inclusao.dadosEstab.infoCaepf: s1005_inclusao_infocaepf_dados = {} s1005_inclusao_infocaepf_dados['s1005_inclusao_id'] = s1005_inclusao_id if 'tpCaepf' in dir(infoCaepf): s1005_inclusao_infocaepf_dados['tpcaepf'] = infoCaepf.tpCaepf.cdata insert = create_insert('s1005_inclusao_infocaepf', s1005_inclusao_infocaepf_dados) resp = executar_sql(insert, True) s1005_inclusao_infocaepf_id = resp[0][0] #print s1005_inclusao_infocaepf_id if 'infoObra' in dir(inclusao.dadosEstab): for infoObra in inclusao.dadosEstab.infoObra: s1005_inclusao_infoobra_dados = {} s1005_inclusao_infoobra_dados['s1005_inclusao_id'] = s1005_inclusao_id if 'indSubstPatrObra' in dir(infoObra): s1005_inclusao_infoobra_dados['indsubstpatrobra'] = infoObra.indSubstPatrObra.cdata insert = create_insert('s1005_inclusao_infoobra', s1005_inclusao_infoobra_dados) resp = executar_sql(insert, True) s1005_inclusao_infoobra_id = resp[0][0] #print s1005_inclusao_infoobra_id if 'infoEntEduc' in dir(inclusao.dadosEstab.infoTrab.infoApr): for infoEntEduc in inclusao.dadosEstab.infoTrab.infoApr.infoEntEduc: s1005_inclusao_infoenteduc_dados = {} s1005_inclusao_infoenteduc_dados['s1005_inclusao_id'] = s1005_inclusao_id if 'nrInsc' in dir(infoEntEduc): s1005_inclusao_infoenteduc_dados['nrinsc'] = infoEntEduc.nrInsc.cdata insert = create_insert('s1005_inclusao_infoenteduc', s1005_inclusao_infoenteduc_dados) resp = executar_sql(insert, True) s1005_inclusao_infoenteduc_id = resp[0][0] #print s1005_inclusao_infoenteduc_id if 'infoPCD' in dir(inclusao.dadosEstab.infoTrab): for infoPCD in inclusao.dadosEstab.infoTrab.infoPCD: s1005_inclusao_infopcd_dados = {} s1005_inclusao_infopcd_dados['s1005_inclusao_id'] = s1005_inclusao_id if 'contPCD' in dir(infoPCD): s1005_inclusao_infopcd_dados['contpcd'] = infoPCD.contPCD.cdata if 'nrProcJud' in dir(infoPCD): s1005_inclusao_infopcd_dados['nrprocjud'] = infoPCD.nrProcJud.cdata insert = create_insert('s1005_inclusao_infopcd', s1005_inclusao_infopcd_dados) resp = executar_sql(insert, True) s1005_inclusao_infopcd_id = resp[0][0] #print s1005_inclusao_infopcd_id if 'alteracao' in dir(evtTabEstab.infoEstab): for alteracao in evtTabEstab.infoEstab.alteracao: s1005_alteracao_dados = {} s1005_alteracao_dados['s1005_evttabestab_id'] = s1005_evttabestab_id if 'tpInsc' in dir(alteracao.ideEstab): s1005_alteracao_dados['tpinsc'] = alteracao.ideEstab.tpInsc.cdata if 'nrInsc' in dir(alteracao.ideEstab): s1005_alteracao_dados['nrinsc'] = alteracao.ideEstab.nrInsc.cdata if 'iniValid' in dir(alteracao.ideEstab): s1005_alteracao_dados['inivalid'] = alteracao.ideEstab.iniValid.cdata if 'fimValid' in dir(alteracao.ideEstab): s1005_alteracao_dados['fimvalid'] = alteracao.ideEstab.fimValid.cdata if 'cnaePrep' in dir(alteracao.dadosEstab): s1005_alteracao_dados['cnaeprep'] = alteracao.dadosEstab.cnaePrep.cdata if 'aliqRat' in dir(alteracao.dadosEstab.aliqGilrat): s1005_alteracao_dados['aliqrat'] = alteracao.dadosEstab.aliqGilrat.aliqRat.cdata if 'fap' in dir(alteracao.dadosEstab.aliqGilrat): s1005_alteracao_dados['fap'] = alteracao.dadosEstab.aliqGilrat.fap.cdata if 'aliqRatAjust' in dir(alteracao.dadosEstab.aliqGilrat): s1005_alteracao_dados['aliqratajust'] = alteracao.dadosEstab.aliqGilrat.aliqRatAjust.cdata if 'regPt' in dir(alteracao.dadosEstab.infoTrab): s1005_alteracao_dados['regpt'] = alteracao.dadosEstab.infoTrab.regPt.cdata if 'contApr' in dir(alteracao.dadosEstab.infoTrab.infoApr): s1005_alteracao_dados['contapr'] = alteracao.dadosEstab.infoTrab.infoApr.contApr.cdata if 'nrProcJud' in dir(alteracao.dadosEstab.infoTrab.infoApr): s1005_alteracao_dados['nrprocjud'] = alteracao.dadosEstab.infoTrab.infoApr.nrProcJud.cdata if 'contEntEd' in dir(alteracao.dadosEstab.infoTrab.infoApr): s1005_alteracao_dados['contented'] = alteracao.dadosEstab.infoTrab.infoApr.contEntEd.cdata insert = create_insert('s1005_alteracao', s1005_alteracao_dados) resp = executar_sql(insert, True) s1005_alteracao_id = resp[0][0] #print s1005_alteracao_id if 'procAdmJudRat' in dir(alteracao.dadosEstab.aliqGilrat): for procAdmJudRat in alteracao.dadosEstab.aliqGilrat.procAdmJudRat: s1005_alteracao_procadmjudrat_dados = {} s1005_alteracao_procadmjudrat_dados['s1005_alteracao_id'] = s1005_alteracao_id if 'tpProc' in dir(procAdmJudRat): s1005_alteracao_procadmjudrat_dados['tpproc'] = procAdmJudRat.tpProc.cdata if 'nrProc' in dir(procAdmJudRat): s1005_alteracao_procadmjudrat_dados['nrproc'] = procAdmJudRat.nrProc.cdata if 'codSusp' in dir(procAdmJudRat): s1005_alteracao_procadmjudrat_dados['codsusp'] = procAdmJudRat.codSusp.cdata insert = create_insert('s1005_alteracao_procadmjudrat', s1005_alteracao_procadmjudrat_dados) resp = executar_sql(insert, True) s1005_alteracao_procadmjudrat_id = resp[0][0] #print s1005_alteracao_procadmjudrat_id if 'procAdmJudFap' in dir(alteracao.dadosEstab.aliqGilrat): for procAdmJudFap in alteracao.dadosEstab.aliqGilrat.procAdmJudFap: s1005_alteracao_procadmjudfap_dados = {} s1005_alteracao_procadmjudfap_dados['s1005_alteracao_id'] = s1005_alteracao_id if 'tpProc' in dir(procAdmJudFap): s1005_alteracao_procadmjudfap_dados['tpproc'] = procAdmJudFap.tpProc.cdata if 'nrProc' in dir(procAdmJudFap): s1005_alteracao_procadmjudfap_dados['nrproc'] = procAdmJudFap.nrProc.cdata if 'codSusp' in dir(procAdmJudFap): s1005_alteracao_procadmjudfap_dados['codsusp'] = procAdmJudFap.codSusp.cdata insert = create_insert('s1005_alteracao_procadmjudfap', s1005_alteracao_procadmjudfap_dados) resp = executar_sql(insert, True) s1005_alteracao_procadmjudfap_id = resp[0][0] #print s1005_alteracao_procadmjudfap_id if 'infoCaepf' in dir(alteracao.dadosEstab): for infoCaepf in alteracao.dadosEstab.infoCaepf: s1005_alteracao_infocaepf_dados = {} s1005_alteracao_infocaepf_dados['s1005_alteracao_id'] = s1005_alteracao_id if 'tpCaepf' in dir(infoCaepf): s1005_alteracao_infocaepf_dados['tpcaepf'] = infoCaepf.tpCaepf.cdata insert = create_insert('s1005_alteracao_infocaepf', s1005_alteracao_infocaepf_dados) resp = executar_sql(insert, True) s1005_alteracao_infocaepf_id = resp[0][0] #print s1005_alteracao_infocaepf_id if 'infoObra' in dir(alteracao.dadosEstab): for infoObra in alteracao.dadosEstab.infoObra: s1005_alteracao_infoobra_dados = {} s1005_alteracao_infoobra_dados['s1005_alteracao_id'] = s1005_alteracao_id if 'indSubstPatrObra' in dir(infoObra): s1005_alteracao_infoobra_dados['indsubstpatrobra'] = infoObra.indSubstPatrObra.cdata insert = create_insert('s1005_alteracao_infoobra', s1005_alteracao_infoobra_dados) resp = executar_sql(insert, True) s1005_alteracao_infoobra_id = resp[0][0] #print s1005_alteracao_infoobra_id if 'infoEntEduc' in dir(alteracao.dadosEstab.infoTrab.infoApr): for infoEntEduc in alteracao.dadosEstab.infoTrab.infoApr.infoEntEduc: s1005_alteracao_infoenteduc_dados = {} s1005_alteracao_infoenteduc_dados['s1005_alteracao_id'] = s1005_alteracao_id if 'nrInsc' in dir(infoEntEduc): s1005_alteracao_infoenteduc_dados['nrinsc'] = infoEntEduc.nrInsc.cdata insert = create_insert('s1005_alteracao_infoenteduc', s1005_alteracao_infoenteduc_dados) resp = executar_sql(insert, True) s1005_alteracao_infoenteduc_id = resp[0][0] #print s1005_alteracao_infoenteduc_id if 'infoPCD' in dir(alteracao.dadosEstab.infoTrab): for infoPCD in alteracao.dadosEstab.infoTrab.infoPCD: s1005_alteracao_infopcd_dados = {} s1005_alteracao_infopcd_dados['s1005_alteracao_id'] = s1005_alteracao_id if 'contPCD' in dir(infoPCD): s1005_alteracao_infopcd_dados['contpcd'] = infoPCD.contPCD.cdata if 'nrProcJud' in dir(infoPCD): s1005_alteracao_infopcd_dados['nrprocjud'] = infoPCD.nrProcJud.cdata insert = create_insert('s1005_alteracao_infopcd', s1005_alteracao_infopcd_dados) resp = executar_sql(insert, True) s1005_alteracao_infopcd_id = resp[0][0] #print s1005_alteracao_infopcd_id if 'novaValidade' in dir(alteracao): for novaValidade in alteracao.novaValidade: s1005_alteracao_novavalidade_dados = {} s1005_alteracao_novavalidade_dados['s1005_alteracao_id'] = s1005_alteracao_id if 'iniValid' in dir(novaValidade): s1005_alteracao_novavalidade_dados['inivalid'] = novaValidade.iniValid.cdata if 'fimValid' in dir(novaValidade): s1005_alteracao_novavalidade_dados['fimvalid'] = novaValidade.fimValid.cdata insert = create_insert('s1005_alteracao_novavalidade', s1005_alteracao_novavalidade_dados) resp = executar_sql(insert, True) s1005_alteracao_novavalidade_id = resp[0][0] #print s1005_alteracao_novavalidade_id if 'exclusao' in dir(evtTabEstab.infoEstab): for exclusao in evtTabEstab.infoEstab.exclusao: s1005_exclusao_dados = {} s1005_exclusao_dados['s1005_evttabestab_id'] = s1005_evttabestab_id if 'tpInsc' in dir(exclusao.ideEstab): s1005_exclusao_dados['tpinsc'] = exclusao.ideEstab.tpInsc.cdata if 'nrInsc' in dir(exclusao.ideEstab): s1005_exclusao_dados['nrinsc'] = exclusao.ideEstab.nrInsc.cdata if 'iniValid' in dir(exclusao.ideEstab): s1005_exclusao_dados['inivalid'] = exclusao.ideEstab.iniValid.cdata if 'fimValid' in dir(exclusao.ideEstab): s1005_exclusao_dados['fimvalid'] = exclusao.ideEstab.fimValid.cdata insert = create_insert('s1005_exclusao', s1005_exclusao_dados) resp = executar_sql(insert, True) s1005_exclusao_id = resp[0][0] #print s1005_exclusao_id from emensageriapro.esocial.views.s1005_evttabestab_verificar import validar_evento_funcao if validar: validar_evento_funcao(s1005_evttabestab_id, 'default') return dados
def get_data(): obj = untangle.parse(my_url) tot_rows = obj.imdata['totalCount'] tot_rows = int(tot_rows) return tot_rows, obj
def get_image_description(self, hash): """Gets the image title and/or caption in a formatted string Note that the xml returned for random images vs. gallery/subreddit images is a bit different, they have to be done differently. This is for random images. """ # Getting the xml information for images can fail if the Imgur servers are busy or down # In this case, just set the title and caption to "" try: # Post the api.imgur server for the image information response = cStringIO.StringIO() c = pycurl.Curl() values = [("key", self.IMGUR_API_DEV_KEY)] c.setopt(c.URL, "http://api.imgur.com/2/image/" + hash + ".xml") c.setopt(c.HTTPPOST, values) c.setopt(c.WRITEFUNCTION, response.write) c.perform() c.close() imageInfo = response.getvalue() # Analyze the xml response o = untangle.parse(imageInfo) imageTitle = o.image.image.title.cdata imageCaption = o.image.image.caption.cdata except: imageTitle = "" imageCaption = "" # Format the description, taking care to not go over 140 chars # Admittedly, this is isn't very pretty. I'm sure it could be done better urlLength = 28 if imageTitle is not "": if imageCaption is not "": # Title: Caption [Url] titleLength = len( imageTitle) + 2 # +2 for ": " after the title captionLength = 140 - urlLength - titleLength - 1 # -1 for space after caption between url imageFullDescription = imageTitle + ": " + imageCaption[ 0:captionLength] return imageFullDescription else: # Title [Url] titleLength = 140 - urlLength imageFullDescription = imageTitle[0:titleLength] return imageFullDescription else: if imageCaption is not "": # Caption [Url] captionLength = 140 - urlLength imageFullDescription = imageCaption[0:captionLength] return imageFullDescription else: # Url imageFullDescription = "" return imageFullDescription return imageFullDescription
import untangle import csv # Scraper that fetches information about parties logging = False writeResults = True outputFile = '../data/parties.csv' results = [["party_id", "name", "abr_short", "abr_long"]] #schema for csv file obj = untangle.parse('http://www.althingi.is/altext/xml/thingflokkar/') if (logging): print("Starting to fetch data") for party in obj.þingflokkar.children: #print(party.children) results.append([ party['id'], party.heiti.cdata.strip(), party.skammstafanir.stuttskammstöfun.cdata.strip(), party.skammstafanir.löngskammstöfun.cdata.strip(), ]) #print(results) if (logging): print("Finished fetching data") if (writeResults): print('Writing to ' + outputFile) summaryCSV = open(outputFile, 'w', encoding="utf-8") with summaryCSV: writer = csv.writer(summaryCSV)
import os maxsize = 512 # tags = ["asu_tora","puuakachan","mankun","hammer_%28sunset_beach%29",""] # for tag in tags: count = 22863 directory = "/Users/venice/imgs" if not os.path.exists(directory): os.makedirs(directory) for i in range(231, 10000): stringreturn = urllib.request.urlopen("http://safebooru.org/index.php?page=dapi&s=post&q=index&tags=1girl%20solo&pid="+str(i)).read().decode('utf-8') xmlreturn = untangle.parse(stringreturn) for post in xmlreturn.posts.post: imgurl = "http:" + post["sample_url"] if ("png" in imgurl) or ("jpg" in imgurl): print(f"{i}:{count} {imgurl}") resp = urllib.request.urlopen(imgurl) image = np.asarray(bytearray(resp.read()), dtype="uint8") image = cv2.imdecode(image, cv2.IMREAD_COLOR) height, width = image.shape[:2] if height > width: scalefactor = (maxsize*1.0) / width res = cv2.resize(image,(int(width * scalefactor), int(height*scalefactor)), interpolation = cv2.INTER_CUBIC) cropped = res[0:maxsize,0:maxsize] if width > height: scalefactor = (maxsize*1.0) / height res = cv2.resize(image,(int(width * scalefactor), int(height*scalefactor)), interpolation = cv2.INTER_CUBIC)
def getRecord(self, url): self.url = url rec = untangle.parse(url) return rec
def validacoes_s2221_evttoxic(arquivo): from emensageriapro.mensageiro.functions.funcoes_validacoes import validar_campo import untangle xml = ler_arquivo(arquivo).replace("s:", "") doc = untangle.parse(xml) validacoes_lista = [] xmlns = doc.eSocial['xmlns'].split('/') evtToxic = doc.eSocial.evtToxic #variaveis if 'ideEvento' in dir(evtToxic.ideEvento): for ideEvento in evtToxic.ideEvento: if 'indRetif' in dir(ideEvento): validacoes_lista = validar_campo(validacoes_lista, 'ideEvento.indRetif', ideEvento.indRetif.cdata, 1, u'1, 2') if 'nrRecibo' in dir(ideEvento): validacoes_lista = validar_campo(validacoes_lista, 'ideEvento.nrRecibo', ideEvento.nrRecibo.cdata, 0, u'None') if 'tpAmb' in dir(ideEvento): validacoes_lista = validar_campo(validacoes_lista, 'ideEvento.tpAmb', ideEvento.tpAmb.cdata, 1, u'1, 2') if 'procEmi' in dir(ideEvento): validacoes_lista = validar_campo(validacoes_lista, 'ideEvento.procEmi', ideEvento.procEmi.cdata, 1, u'1, 2, 3, 4, 5') if 'verProc' in dir(ideEvento): validacoes_lista = validar_campo(validacoes_lista, 'ideEvento.verProc', ideEvento.verProc.cdata, 1, u'None') if 'ideEmpregador' in dir(evtToxic.ideEmpregador): for ideEmpregador in evtToxic.ideEmpregador: if 'tpInsc' in dir(ideEmpregador): validacoes_lista = validar_campo(validacoes_lista, 'ideEmpregador.tpInsc', ideEmpregador.tpInsc.cdata, 1, u'1, 2, 3, 4, 5, 6') if 'nrInsc' in dir(ideEmpregador): validacoes_lista = validar_campo(validacoes_lista, 'ideEmpregador.nrInsc', ideEmpregador.nrInsc.cdata, 1, u'None') if 'ideVinculo' in dir(evtToxic.ideVinculo): for ideVinculo in evtToxic.ideVinculo: if 'cpfTrab' in dir(ideVinculo): validacoes_lista = validar_campo(validacoes_lista, 'ideVinculo.cpfTrab', ideVinculo.cpfTrab.cdata, 1, u'None') if 'nisTrab' in dir(ideVinculo): validacoes_lista = validar_campo(validacoes_lista, 'ideVinculo.nisTrab', ideVinculo.nisTrab.cdata, 0, u'None') if 'matricula' in dir(ideVinculo): validacoes_lista = validar_campo(validacoes_lista, 'ideVinculo.matricula', ideVinculo.matricula.cdata, 0, u'None') if 'codCateg' in dir(ideVinculo): validacoes_lista = validar_campo( validacoes_lista, 'ideVinculo.codCateg', ideVinculo.codCateg.cdata, 0, u'101, 102, 103, 104, 105, 106, 107, 108, 111, 201, 202, 301, 302, 303, 305, 306, 307, 308, 309, 401, 410, 701, 711, 712, 721, 722, 723, 731, 734, 738, 741, 751, 761, 771, 781, 901, 902, 903, 904, 905' ) if 'toxicologico' in dir(evtToxic.toxicologico): for toxicologico in evtToxic.toxicologico: if 'dtExame' in dir(toxicologico): validacoes_lista = validar_campo(validacoes_lista, 'toxicologico.dtExame', toxicologico.dtExame.cdata, 1, u'None') if 'cnpjLab' in dir(toxicologico): validacoes_lista = validar_campo(validacoes_lista, 'toxicologico.cnpjLab', toxicologico.cnpjLab.cdata, 0, u'None') if 'codSeqExame' in dir(toxicologico): validacoes_lista = validar_campo( validacoes_lista, 'toxicologico.codSeqExame', toxicologico.codSeqExame.cdata, 0, u'None') if 'nmMed' in dir(toxicologico): validacoes_lista = validar_campo(validacoes_lista, 'toxicologico.nmMed', toxicologico.nmMed.cdata, 0, u'None') if 'nrCRM' in dir(toxicologico): validacoes_lista = validar_campo(validacoes_lista, 'toxicologico.nrCRM', toxicologico.nrCRM.cdata, 0, u'None') if 'ufCRM' in dir(toxicologico): validacoes_lista = validar_campo(validacoes_lista, 'toxicologico.ufCRM', toxicologico.ufCRM.cdata, 0, u'None') if 'indRecusa' in dir(toxicologico): validacoes_lista = validar_campo(validacoes_lista, 'toxicologico.indRecusa', toxicologico.indRecusa.cdata, 1, u'S, N') return validacoes_lista
# REGISTER: https://www.zillow.com/user/Register.htm # API REGISTER: https://www.zillow.com/webservice/Registration.htm # API DOC: http://www.zillow.com/howto/api/APIOverview.htm # This one does not get captcha Sept 2017 import sys import untangle import requests KEY = sys.argv[1] # your zillow api key/id as argument to script # Find out how much property 64969892 is worth zpid = '64969892' URL = "http://www.zillow.com/webservice/GetZestimate.htm?zws-id=%s&zpid=%s" % ( KEY, zpid) print URL # response = requests.get(URL, params={"zws-id":KEY, "zpid":zpid}) response = requests.get(URL) xmldata = unicode.encode(response.text, encoding='ascii', errors='ignore') xml = untangle.parse(xmldata) print "URL", xml.Zestimate_zestimate.response.links.homedetails.cdata print "Value $%s" % xml.Zestimate_zestimate.response.zestimate.amount.cdata
import untangle # 将文件解析成对象 obj = untangle.parse('p11/data.xml') #获取l标签 obj.root.title.__dict__['l'] obj.root.body.p['name']
def load_data(self): starttime = time.time() logger.info('Update {} data from ONLINE refreshing cache.'.format( self.get_type())) xmldata = terrariumUtils.get_remote_data( self.source.strip('/') + '/forecast_hour_by_hour.xml') if xmldata is not None: try: xmldata = untangle.parse(xmldata) except Exception: logger.exception('Error getting online data from {}'.format( self.get_type())) return False # Parse hour forecast # Parse general data information self.location['city'] = xmldata.weatherdata.location.name.cdata self.location[ 'country'] = xmldata.weatherdata.location.country.cdata self.location['geo']['lat'] = float( xmldata.weatherdata.location.location['latitude']) self.location['geo']['long'] = float( xmldata.weatherdata.location.location['longitude']) self.credits['text'] = xmldata.weatherdata.credit.link['text'] self.credits['url'] = xmldata.weatherdata.credit.link['url'] self.sun['rise'] = int( time.mktime( dateutil.parser.parse( xmldata.weatherdata.sun['rise']).timetuple())) self.sun['set'] = int( time.mktime( dateutil.parser.parse( xmldata.weatherdata.sun['set']).timetuple())) for forecast in xmldata.weatherdata.forecast.tabular.time: forecast_data = { 'from': int( time.mktime( dateutil.parser.parse( forecast['from']).timetuple())), 'to': int( time.mktime( dateutil.parser.parse( forecast['to']).timetuple())), 'weather': forecast.symbol['name'], 'rain': float(forecast.precipitation['value']), 'humidity': 0.0, 'wind_direction': forecast.windDirection['name'], 'wind_speed': float(forecast.windSpeed['mps']), 'temperature': float(forecast.temperature['value']), 'pressure': float(forecast.pressure['value']) } self.hour_forecast[forecast_data['from']] = forecast_data # Parse week forecast xmldata = terrariumUtils.get_remote_data( self.source.strip('/') + '/forecast.xml') if xmldata is not None: try: xmldata = untangle.parse(xmldata) except Exception: logger.exception( 'Error getting online data from {}'.format( self.get_type())) for forecast in xmldata.weatherdata.forecast.tabular.time: forecast_data = { 'from': int( time.mktime( dateutil.parser.parse( forecast['from']).timetuple())), 'to': int( time.mktime( dateutil.parser.parse( forecast['to']).timetuple())), 'weather': forecast.symbol['name'], 'rain': float(forecast.precipitation['value']), 'humidity': 0.0, 'wind_direction': forecast.windDirection['name'], 'wind_speed': float(forecast.windSpeed['mps']), 'temperature': float(forecast.temperature['value']), 'pressure': float(forecast.pressure['value']) } self.week_forecast[forecast_data['from']] = forecast_data else: logger.error('Error getting online data from {}'.format( self.get_type())) else: logger.error('Error getting online data from {}'.format( self.get_type())) return False return True
import urllib.request import json import numpy as np import cv2 import untangle maxsize = 512 count = 1 for i in range(3000): stringreturn = urllib.request.urlopen( f"https://safebooru.org/index.php?page=dapi&s=post&q=index&tags=1girl%20solo&pid={str(i+84)}" ).read() xmlreturn = untangle.parse(stringreturn.decode()) # print(f"{i}, {count}") if i % 300 == 0: print( "=================================================================" ) print(f"{i/3000 * 100}% done..") print( "=================================================================" ) for post in xmlreturn.posts.post: imgurl = "https:" + post["sample_url"] #print(imgurl) if ("png" in imgurl) or ("jpg" in imgurl): resp = urllib.request.urlopen(imgurl)
def validacoes_s2230_evtafasttemp(arquivo): from emensageriapro.mensageiro.functions.funcoes_validacoes import validar_campo import untangle xml = ler_arquivo(arquivo).replace("s:", "") doc = untangle.parse(xml) validacoes_lista = [] xmlns = doc.eSocial['xmlns'].split('/') evtAfastTemp = doc.eSocial.evtAfastTemp #variaveis if 'ideEvento' in dir(evtAfastTemp.ideEvento): for ideEvento in evtAfastTemp.ideEvento: if 'indRetif' in dir(ideEvento): validacoes_lista = validar_campo(validacoes_lista, 'ideEvento.indRetif', ideEvento.indRetif.cdata, 1, u'1, 2') if 'nrRecibo' in dir(ideEvento): validacoes_lista = validar_campo(validacoes_lista, 'ideEvento.nrRecibo', ideEvento.nrRecibo.cdata, 0, u'None') if 'tpAmb' in dir(ideEvento): validacoes_lista = validar_campo(validacoes_lista, 'ideEvento.tpAmb', ideEvento.tpAmb.cdata, 1, u'1, 2') if 'procEmi' in dir(ideEvento): validacoes_lista = validar_campo(validacoes_lista, 'ideEvento.procEmi', ideEvento.procEmi.cdata, 1, u'1, 2, 3, 4, 5') if 'verProc' in dir(ideEvento): validacoes_lista = validar_campo(validacoes_lista, 'ideEvento.verProc', ideEvento.verProc.cdata, 1, u'None') if 'ideEmpregador' in dir(evtAfastTemp.ideEmpregador): for ideEmpregador in evtAfastTemp.ideEmpregador: if 'tpInsc' in dir(ideEmpregador): validacoes_lista = validar_campo(validacoes_lista, 'ideEmpregador.tpInsc', ideEmpregador.tpInsc.cdata, 1, u'1, 2, 3, 4, 5') if 'nrInsc' in dir(ideEmpregador): validacoes_lista = validar_campo(validacoes_lista, 'ideEmpregador.nrInsc', ideEmpregador.nrInsc.cdata, 1, u'None') if 'ideVinculo' in dir(evtAfastTemp.ideVinculo): for ideVinculo in evtAfastTemp.ideVinculo: if 'cpfTrab' in dir(ideVinculo): validacoes_lista = validar_campo(validacoes_lista, 'ideVinculo.cpfTrab', ideVinculo.cpfTrab.cdata, 1, u'None') if 'nisTrab' in dir(ideVinculo): validacoes_lista = validar_campo(validacoes_lista, 'ideVinculo.nisTrab', ideVinculo.nisTrab.cdata, 0, u'None') if 'matricula' in dir(ideVinculo): validacoes_lista = validar_campo(validacoes_lista, 'ideVinculo.matricula', ideVinculo.matricula.cdata, 0, u'None') if 'codCateg' in dir(ideVinculo): validacoes_lista = validar_campo( validacoes_lista, 'ideVinculo.codCateg', ideVinculo.codCateg.cdata, 0, u'101, 102, 103, 104, 105, 106, 111, 201, 202, 301, 302, 303, 305, 306, 307, 308, 309, 401, 410, 701, 711, 712, 721, 722, 723, 731, 734, 738, 741, 751, 761, 771, 781, 901, 902, 903, 904, 905' ) if 'infoAfastamento' in dir(evtAfastTemp.infoAfastamento): for infoAfastamento in evtAfastTemp.infoAfastamento: if 'iniAfastamento' in dir(infoAfastamento.iniAfastamento): for iniAfastamento in infoAfastamento.iniAfastamento: if 'dtIniAfast' in dir(iniAfastamento): validacoes_lista = validar_campo( validacoes_lista, 'iniAfastamento.dtIniAfast', iniAfastamento.dtIniAfast.cdata, 1, u'None') if 'codMotAfast' in dir(iniAfastamento): validacoes_lista = validar_campo( validacoes_lista, 'iniAfastamento.codMotAfast', iniAfastamento.codMotAfast.cdata, 1, u'01, 03, 05, 06, 07, 08, 10, 11, 12, 13, 14, 15, 16, 17, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 33, 34, 35' ) if 'infoMesmoMtv' in dir(iniAfastamento): validacoes_lista = validar_campo( validacoes_lista, 'iniAfastamento.infoMesmoMtv', iniAfastamento.infoMesmoMtv.cdata, 0, u'S, N') if 'tpAcidTransito' in dir(iniAfastamento): validacoes_lista = validar_campo( validacoes_lista, 'iniAfastamento.tpAcidTransito', iniAfastamento.tpAcidTransito.cdata, 0, u'1, 2, 3') if 'observacao' in dir(iniAfastamento): validacoes_lista = validar_campo( validacoes_lista, 'iniAfastamento.observacao', iniAfastamento.observacao.cdata, 0, u'None') if 'infoAtestado' in dir(iniAfastamento.infoAtestado): for infoAtestado in iniAfastamento.infoAtestado: if 'codCID' in dir(infoAtestado): validacoes_lista = validar_campo( validacoes_lista, 'infoAtestado.codCID', infoAtestado.codCID.cdata, 0, u'None') if 'qtdDiasAfast' in dir(infoAtestado): validacoes_lista = validar_campo( validacoes_lista, 'infoAtestado.qtdDiasAfast', infoAtestado.qtdDiasAfast.cdata, 1, u'None') if 'emitente' in dir(infoAtestado.emitente): for emitente in infoAtestado.emitente: if 'nmEmit' in dir(emitente): validacoes_lista = validar_campo( validacoes_lista, 'emitente.nmEmit', emitente.nmEmit.cdata, 1, u'None') if 'ideOC' in dir(emitente): validacoes_lista = validar_campo( validacoes_lista, 'emitente.ideOC', emitente.ideOC.cdata, 1, u'1, 2, 3') if 'nrOc' in dir(emitente): validacoes_lista = validar_campo( validacoes_lista, 'emitente.nrOc', emitente.nrOc.cdata, 1, u'None') if 'ufOC' in dir(emitente): validacoes_lista = validar_campo( validacoes_lista, 'emitente.ufOC', emitente.ufOC.cdata, 0, u'None') if 'infoCessao' in dir(iniAfastamento.infoCessao): for infoCessao in iniAfastamento.infoCessao: if 'cnpjCess' in dir(infoCessao): validacoes_lista = validar_campo( validacoes_lista, 'infoCessao.cnpjCess', infoCessao.cnpjCess.cdata, 1, u'None') if 'infOnus' in dir(infoCessao): validacoes_lista = validar_campo( validacoes_lista, 'infoCessao.infOnus', infoCessao.infOnus.cdata, 1, u'1, 2, 3') if 'infoMandSind' in dir(iniAfastamento.infoMandSind): for infoMandSind in iniAfastamento.infoMandSind: if 'cnpjSind' in dir(infoMandSind): validacoes_lista = validar_campo( validacoes_lista, 'infoMandSind.cnpjSind', infoMandSind.cnpjSind.cdata, 1, u'None') if 'infOnusRemun' in dir(infoMandSind): validacoes_lista = validar_campo( validacoes_lista, 'infoMandSind.infOnusRemun', infoMandSind.infOnusRemun.cdata, 1, u'1, 2, 3') if 'infoRetif' in dir(infoAfastamento.infoRetif): for infoRetif in infoAfastamento.infoRetif: if 'origRetif' in dir(infoRetif): validacoes_lista = validar_campo( validacoes_lista, 'infoRetif.origRetif', infoRetif.origRetif.cdata, 1, u'1, 2, 3') if 'tpProc' in dir(infoRetif): validacoes_lista = validar_campo( validacoes_lista, 'infoRetif.tpProc', infoRetif.tpProc.cdata, 0, u'1, 2, 3') if 'nrProc' in dir(infoRetif): validacoes_lista = validar_campo( validacoes_lista, 'infoRetif.nrProc', infoRetif.nrProc.cdata, 0, u'None') if 'fimAfastamento' in dir(infoAfastamento.fimAfastamento): for fimAfastamento in infoAfastamento.fimAfastamento: if 'dtTermAfast' in dir(fimAfastamento): validacoes_lista = validar_campo( validacoes_lista, 'fimAfastamento.dtTermAfast', fimAfastamento.dtTermAfast.cdata, 1, u'None') return validacoes_lista
# API home http://www.omdbapi.com/ # python lib https://github.com/dgilland/omdb.py # no key required # Derived from https://blog.n-der.net/?p=14 import urllib import urllib2 import json import untangle URL = "http://www.omdbapi.com/?" movie_title = "Star Wars" movie_year = "1977" query = {'t': movie_title, 'y': movie_year, 'r': 'xml'} query_url = URL + urllib.urlencode(query) response = urllib2.urlopen(query_url) data = response.read() if 'r' in query and query['r'] == 'xml': print data xml = untangle.parse(data) print xml.root.movie['title'] print xml.root.movie['plot'] else: json_data = json.loads(data) print json.dumps(json_data, indent=4)
def get_comment_options(): return get_options(untangle.parse(get_comments()))
def populate_metadata(self): # Validate XPI file try: with zipfile.ZipFile(self.xpi) as zf: files = set(zf.namelist()) # Verify this is a web extension or legacy addon if "manifest.json" in files: # Web extension with zf.open("manifest.json") as manifest_file: try: data = json.load(manifest_file) except json.decoder.JSONDecodeError: raise ValidationError({"xpi": "Web extension manifest is corrupt."}) self.extension_id = ( data.get("applications", {}).get("gecko", {}).get("id", None) ) self.version = data.get("version") if not self.extension_id: raise ValidationError( { "xpi": ( "Web extensions must have a manifest key " '"applications.gecko.id".' ) } ) if not self.version: raise ValidationError( {"xpi": 'Web extensions must have a manifest key "version".'} ) elif "install.rdf" in files: # Legacy addon self.is_legacy = True with zf.open("install.rdf", "r") as rdf_file: try: data = untangle.parse(rdf_file.read().decode()) except SAXParseException: raise ValidationError( {"xpi": 'Legacy addon "install.rdf" is corrupt.'} ) try: self.extension_id = data.RDF.Description.em_id.cdata self.version = data.RDF.Description.em_version.cdata except AttributeError: pass # Ignore as this will be dealt with in the next step if not self.extension_id: raise ValidationError( {"xpi": 'Legacy addons "install.rdf" must specify an id.'} ) if not self.version: raise ValidationError( {"xpi": 'Legacy addons "install.rdf" must specify a version.'} ) else: raise ValidationError( {"xpi": "Extension file must be a valid WebExtension or legacy addon."} ) # Verify the extension is signed if not SIGNING_FILES.issubset(files): raise ValidationError({"xpi": "Extension file must be signed."}) except zipfile.BadZipFile: raise ValidationError({"xpi": "Extension file must be zip-formatted."}) # Make sure to read the XPI file from the start before hashing self.xpi.seek(0) self.hash = hashlib.sha256(self.xpi.read()).hexdigest() self.hash_algorithm = "sha256"
def test_parse_xml(): with open(Path(__file__).parent / "sample_response.xml") as f: o = untangle.parse(f) assert len(o.informationTable.children) == 21
def validacoes_s1060_evttabambiente(arquivo): from emensageriapro.mensageiro.functions.funcoes_validacoes import validar_campo import untangle xml = ler_arquivo(arquivo).replace("s:", "") doc = untangle.parse(xml) validacoes_lista = [] xmlns = doc.eSocial['xmlns'].split('/') evtTabAmbiente = doc.eSocial.evtTabAmbiente #variaveis if 'ideEvento' in dir(evtTabAmbiente.ideEvento): for ideEvento in evtTabAmbiente.ideEvento: if 'tpAmb' in dir(ideEvento): validacoes_lista = validar_campo( validacoes_lista, 'ideEvento.tpAmb', ideEvento.tpAmb.cdata, 1, u'1, 2') if 'procEmi' in dir(ideEvento): validacoes_lista = validar_campo( validacoes_lista, 'ideEvento.procEmi', ideEvento.procEmi.cdata, 1, u'1, 2, 3, 4, 5') if 'verProc' in dir(ideEvento): validacoes_lista = validar_campo( validacoes_lista, 'ideEvento.verProc', ideEvento.verProc.cdata, 1, u'None') if 'ideEmpregador' in dir(evtTabAmbiente.ideEmpregador): for ideEmpregador in evtTabAmbiente.ideEmpregador: if 'tpInsc' in dir(ideEmpregador): validacoes_lista = validar_campo( validacoes_lista, 'ideEmpregador.tpInsc', ideEmpregador.tpInsc.cdata, 1, u'1, 2, 3, 4, 5, 6') if 'nrInsc' in dir(ideEmpregador): validacoes_lista = validar_campo( validacoes_lista, 'ideEmpregador.nrInsc', ideEmpregador.nrInsc.cdata, 1, u'None') if 'infoAmbiente' in dir(evtTabAmbiente.infoAmbiente): for infoAmbiente in evtTabAmbiente.infoAmbiente: if 'inclusao' in dir(infoAmbiente.inclusao): for inclusao in infoAmbiente.inclusao: if 'ideAmbiente' in dir(inclusao.ideAmbiente): for ideAmbiente in inclusao.ideAmbiente: if 'codAmb' in dir(ideAmbiente): validacoes_lista = validar_campo( validacoes_lista, 'ideAmbiente.codAmb', ideAmbiente.codAmb.cdata, 1, u'None') if 'iniValid' in dir(ideAmbiente): validacoes_lista = validar_campo( validacoes_lista, 'ideAmbiente.iniValid', ideAmbiente.iniValid.cdata, 1, u'None') if 'fimValid' in dir(ideAmbiente): validacoes_lista = validar_campo( validacoes_lista, 'ideAmbiente.fimValid', ideAmbiente.fimValid.cdata, 0, u'None') if 'dadosAmbiente' in dir(inclusao.dadosAmbiente): for dadosAmbiente in inclusao.dadosAmbiente: if 'nmAmb' in dir(dadosAmbiente): validacoes_lista = validar_campo( validacoes_lista, 'dadosAmbiente.nmAmb', dadosAmbiente.nmAmb.cdata, 1, u'None') if 'dscAmb' in dir(dadosAmbiente): validacoes_lista = validar_campo( validacoes_lista, 'dadosAmbiente.dscAmb', dadosAmbiente.dscAmb.cdata, 1, u'None') if 'localAmb' in dir(dadosAmbiente): validacoes_lista = validar_campo( validacoes_lista, 'dadosAmbiente.localAmb', dadosAmbiente.localAmb.cdata, 1, u'1, 2, 3') if 'tpInsc' in dir(dadosAmbiente): validacoes_lista = validar_campo( validacoes_lista, 'dadosAmbiente.tpInsc', dadosAmbiente.tpInsc.cdata, 0, u'1, 2, 3, 4, 5, 6') if 'nrInsc' in dir(dadosAmbiente): validacoes_lista = validar_campo( validacoes_lista, 'dadosAmbiente.nrInsc', dadosAmbiente.nrInsc.cdata, 0, u'None') if 'codLotacao' in dir(dadosAmbiente): validacoes_lista = validar_campo( validacoes_lista, 'dadosAmbiente.codLotacao', dadosAmbiente.codLotacao.cdata, 0, u'None') if 'alteracao' in dir(infoAmbiente.alteracao): for alteracao in infoAmbiente.alteracao: if 'ideAmbiente' in dir(alteracao.ideAmbiente): for ideAmbiente in alteracao.ideAmbiente: if 'codAmb' in dir(ideAmbiente): validacoes_lista = validar_campo( validacoes_lista, 'ideAmbiente.codAmb', ideAmbiente.codAmb.cdata, 1, u'None') if 'iniValid' in dir(ideAmbiente): validacoes_lista = validar_campo( validacoes_lista, 'ideAmbiente.iniValid', ideAmbiente.iniValid.cdata, 1, u'None') if 'fimValid' in dir(ideAmbiente): validacoes_lista = validar_campo( validacoes_lista, 'ideAmbiente.fimValid', ideAmbiente.fimValid.cdata, 0, u'None') if 'dadosAmbiente' in dir(alteracao.dadosAmbiente): for dadosAmbiente in alteracao.dadosAmbiente: if 'nmAmb' in dir(dadosAmbiente): validacoes_lista = validar_campo( validacoes_lista, 'dadosAmbiente.nmAmb', dadosAmbiente.nmAmb.cdata, 1, u'None') if 'dscAmb' in dir(dadosAmbiente): validacoes_lista = validar_campo( validacoes_lista, 'dadosAmbiente.dscAmb', dadosAmbiente.dscAmb.cdata, 1, u'None') if 'localAmb' in dir(dadosAmbiente): validacoes_lista = validar_campo( validacoes_lista, 'dadosAmbiente.localAmb', dadosAmbiente.localAmb.cdata, 1, u'1, 2, 3') if 'tpInsc' in dir(dadosAmbiente): validacoes_lista = validar_campo( validacoes_lista, 'dadosAmbiente.tpInsc', dadosAmbiente.tpInsc.cdata, 0, u'1, 2, 3, 4, 5, 6') if 'nrInsc' in dir(dadosAmbiente): validacoes_lista = validar_campo( validacoes_lista, 'dadosAmbiente.nrInsc', dadosAmbiente.nrInsc.cdata, 0, u'None') if 'codLotacao' in dir(dadosAmbiente): validacoes_lista = validar_campo( validacoes_lista, 'dadosAmbiente.codLotacao', dadosAmbiente.codLotacao.cdata, 0, u'None') if 'novaValidade' in dir(alteracao.novaValidade): for novaValidade in alteracao.novaValidade: if 'iniValid' in dir(novaValidade): validacoes_lista = validar_campo( validacoes_lista, 'novaValidade.iniValid', novaValidade.iniValid.cdata, 1, u'None') if 'fimValid' in dir(novaValidade): validacoes_lista = validar_campo( validacoes_lista, 'novaValidade.fimValid', novaValidade.fimValid.cdata, 0, u'None') if 'exclusao' in dir(infoAmbiente.exclusao): for exclusao in infoAmbiente.exclusao: if 'ideAmbiente' in dir(exclusao.ideAmbiente): for ideAmbiente in exclusao.ideAmbiente: if 'codAmb' in dir(ideAmbiente): validacoes_lista = validar_campo( validacoes_lista, 'ideAmbiente.codAmb', ideAmbiente.codAmb.cdata, 1, u'None') if 'iniValid' in dir(ideAmbiente): validacoes_lista = validar_campo( validacoes_lista, 'ideAmbiente.iniValid', ideAmbiente.iniValid.cdata, 1, u'None') if 'fimValid' in dir(ideAmbiente): validacoes_lista = validar_campo( validacoes_lista, 'ideAmbiente.fimValid', ideAmbiente.fimValid.cdata, 0, u'None') return validacoes_lista