Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import datetime as dt
- import json
- import requests
- import time
- from selenium import webdriver
- from selenium.webdriver.common.keys import Keys
- from pyvirtualdisplay import Display
- def update_permit_location(api_number):
- try:
- rest_url = "http://wwwgisp.rrc.state.tx.us/arcgis/rest/services/rrc_public/RRC_GIS_Viewer/MapServer/1/query?f=json&where=API = '{}' &returnGeometry=true&spatialRel=esriSpatialRelIntersects&outFields=*&outSR=102100".format(api_number)
- response = requests.get(rest_url)
- data = json.loads(response.text)
- lat = data['features'][0]['attributes']['GIS_LAT83']
- lon = data['features'][0]['attributes']['GIS_LONG83']
- print ("lat lon ", lat, lon)
- #Permit.objects.filter(permit_number=permit_number).update(bottom_latitude=lat, bottom_longitude=lon)
- except Exception as e:
- print("error in update", e)
- #logger.exception('Error occurred during fetching lat long for permit: %s and api: %s' % (permit_number, api_number))
- def sync_permit_location():
- display = Display(visible=0, size=(800, 600))
- display.start()
- driver = webdriver.Chrome()
- # permit_numbers = Permit.objects.filter(
- # bottom_latitude__isnull=True,
- # bottom_longitude__isnull=True,
- # drill_type='H'
- # ).values_list('permit_number', flat=True).distinct()
- permit_numbers = [823480]
- for permit in permit_numbers:
- time.sleep(4)
- try:
- driver.get("http://webapps2.rrc.state.tx.us/EWA/drillingPermitsQueryAction.do")
- permit_input = driver.find_element_by_name('searchArgs.permitStatusNoHndlr.inputValue')
- permit_input.send_keys(permit)
- permit_input.send_keys(Keys.RETURN)
- api_elm = driver.find_element_by_xpath("//*[contains(@title, 'Lease detail for API')]")
- api_number = api_elm.text
- print('api number ', api_number)
- update_permit_location(api_number)
- except Exception as e:
- print("error in main block", e)
- #logger.exception('Error occurred during fetching API number for permit: %s.' % permit)
- pass
- driver.quit()
- display.stop()
- sync_permit_location()
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement