def test_technical_contacts(self): eq_(self.record.technical_contacts.__class__.__name__, 'list') eq_(len(self.record.technical_contacts), 2) eq_(self.record.technical_contacts[0].__class__.__name__, 'Contact') eq_(self.record.technical_contacts[0].type, yawhois.record.Contact.TYPE_TECHNICAL) eq_(self.record.technical_contacts[0].id, "KG780-UANIC") eq_(self.record.technical_contacts[0].name, None) eq_(self.record.technical_contacts[0].organization, "Kyivstar GSM") eq_(self.record.technical_contacts[0].address, "Chervonozoryanyi Av., 51") eq_(self.record.technical_contacts[0].city, "KYIV") eq_(self.record.technical_contacts[0].zip, "03110") eq_(self.record.technical_contacts[0].state, None) eq_(self.record.technical_contacts[0].country, "UA") eq_(self.record.technical_contacts[0].country_code, None) eq_(self.record.technical_contacts[0].phone, "+380 (67) 2372213") eq_(self.record.technical_contacts[0].fax, "+380 (44) 2473954") eq_(self.record.technical_contacts[0].email, "*****@*****.**") eq_(self.record.technical_contacts[0].created_on, None) eq_(self.record.technical_contacts[0].updated_on, time_parse('2008-09-02 12:52:47')) eq_(self.record.technical_contacts[1].__class__.__name__, 'Contact') eq_(self.record.technical_contacts[1].type, yawhois.record.Contact.TYPE_TECHNICAL) eq_(self.record.technical_contacts[1].id, "EIC-UANIC") eq_(self.record.technical_contacts[1].name, None) eq_(self.record.technical_contacts[1].organization, "\"ElVisti Information Center\", LLC\nООО \"Информационный центр \"Электронные вести\"\nТОВ \"ІЦ ЕЛВІСТІ\"") eq_(self.record.technical_contacts[1].address, "а/с, 151") eq_(self.record.technical_contacts[1].city, "КИЇВ") eq_(self.record.technical_contacts[1].zip, "03037") eq_(self.record.technical_contacts[1].state, None) eq_(self.record.technical_contacts[1].country, "UA") eq_(self.record.technical_contacts[1].country_code, None) eq_(self.record.technical_contacts[1].phone, "+38044 239-90-91") eq_(self.record.technical_contacts[1].fax, None) eq_(self.record.technical_contacts[1].email, "*****@*****.**") eq_(self.record.technical_contacts[1].created_on, None) eq_(self.record.technical_contacts[1].updated_on, time_parse('2011-12-15 11:33:14'))
def test_technical_contacts(self): eq_(self.record.technical_contacts.__class__.__name__, 'list') eq_(len(self.record.technical_contacts), 1) eq_(self.record.technical_contacts[0].__class__.__name__, 'Contact') eq_(self.record.technical_contacts[0].type, yawhois.record.Contact.TYPE_TECHNICAL) eq_(self.record.technical_contacts[0].id, "AARS1-ITNIC") eq_(self.record.technical_contacts[0].name, "Andrea Antonio Renato Stratta") eq_(self.record.technical_contacts[0].organization, "UCI Italia Srl") eq_(self.record.technical_contacts[0].address, "Via E. Fermi, 161") eq_(self.record.technical_contacts[0].city, "Roma") eq_(self.record.technical_contacts[0].zip, "00146") eq_(self.record.technical_contacts[0].state, "RM") eq_(self.record.technical_contacts[0].country_code, "IT") eq_(self.record.technical_contacts[0].created_on, time_parse('2006-08-16 00:00:00')) eq_(self.record.technical_contacts[0].updated_on, time_parse('2007-03-01 07:48:42'))
def test_admin_contacts(self): eq_(self.record.admin_contacts.__class__.__name__, 'list') eq_(len(self.record.admin_contacts), 1) eq_(self.record.admin_contacts[0].__class__.__name__, 'Contact') eq_(self.record.admin_contacts[0].type, yawhois.record.Contact.TYPE_ADMINISTRATIVE) eq_(self.record.admin_contacts[0].id, "TT4277-ITNIC") eq_(self.record.admin_contacts[0].name, "Tsao Tu") eq_(self.record.admin_contacts[0].organization, "Tu Tsao") eq_(self.record.admin_contacts[0].address, "30 Herbert Street") eq_(self.record.admin_contacts[0].city, "Dublin") eq_(self.record.admin_contacts[0].zip, "2") eq_(self.record.admin_contacts[0].state, "IE") eq_(self.record.admin_contacts[0].country_code, "IE") eq_(self.record.admin_contacts[0].created_on, time_parse('2008-11-27 16:47:22')) eq_(self.record.admin_contacts[0].updated_on, time_parse('2008-11-27 16:47:22'))
def test_technical_contacts(self): eq_(self.record.technical_contacts[0].id, "DUP430692088") eq_(self.record.technical_contacts[0].name, "Google Ireland Holdings") eq_(self.record.technical_contacts[0].organization, "Google Ireland Holdings") eq_(self.record.technical_contacts[0].address, "70 Sir John Rogersons Quay") eq_(self.record.technical_contacts[0].city, "Dublin") eq_(self.record.technical_contacts[0].zip, "2") eq_(self.record.technical_contacts[0].state, "IE") eq_(self.record.technical_contacts[0].country, None) eq_(self.record.technical_contacts[0].country_code, "IE") eq_(self.record.technical_contacts[0].phone, None) eq_(self.record.technical_contacts[0].fax, None) eq_(self.record.technical_contacts[0].email, None) eq_(self.record.technical_contacts[0].created_on, time_parse('2013-04-21 01:05:35')) eq_(self.record.technical_contacts[0].updated_on, time_parse('2013-04-21 01:05:35'))
def get_done_checklist(client, board_id, doing_lists, done_lists, dev_members, date_range): board = client.get_board(board_id) list_ids = doing_lists + done_lists done_check_items = [] for list_id in list_ids: board_list = board.get_list(list_id) cards = board_list.list_cards() for card in cards: card.fetch() if not card.checklists: continue card.fetch_actions("updateCheckItemStateOnCard") card_url = str(card.url) for action in card.actions: check_time = time_parse(action["date"]) check_time = convert_to_local_time(check_time) if not (date_range[0] <= check_time.date() <= date_range[1]): continue # insure the current state is complete if str(action["data"]["checkItem"]["state"]) != "complete": continue member = dev_members.get(action["idMemberCreator"], None) if not member: continue check_item = action["data"]["checkItem"]["name"].encode("utf8") done_check_items.append((check_item, card_url, member)) return done_check_items
def get_message(config=None,log=None): http = make_http(config) try: resp, content = http.request( "http://%s:%s/sms/received" % (config.get("remote","host"), config.get("remote","port")), "GET") if resp.status == 200: remoteMsgs = simplejson.loads(content) for remoteMsg in remoteMsgs: msg = Message(uuid=remoteMsg["uuid"], sent=False, source="http", dest=int(remoteMsg["number"]), time=time_parse(remoteMsg["time"]), text=remoteMsg["text"], origin=int(1)) log.info("Got msg<%s> from remote" % msg.uuid) remove_from_remote( config=config, log=log, message=msg) except Exception, e: log.error(e)
def post(command=None): """ Handles POST request on the main_page. """ command = request.form.get('command') if not command: return ls_html(head='Empty Command') command, args = parse_arguments(command) if "_id" in args: if args['_id'] == "all": args = {} else: args['_id'] = ObjectId(args['_id']) if "date_deadline" in args: try: args["date_deadline"] = str( time_parse(args["date_deadline"]).date()) except ValueError as e: return ls_html(head=str(e)) if "create" == command: args['date_created'] = str(datetime.now().date()) if '_id' in args: del args['_id'] feedback = db.insert_one(args, **db_names) if feedback.acknowledged: return ls_html(head='Created' + ' ' + str(args['_id'])) else: return ls_html(head='Creating failed') if "delete" == command: feedback = db.delete_many(args, **db_names) if feedback.acknowledged: return ls_html(head='Deleted') else: return ls_html(head='Deleting failed') if "ls" == command: return ls_html(args) if "view" == command: feedback = db.find_one(args, **db_names) if feedback is None: feedback = {'_id': 'does noch exist'} ls_html_feedback = list(db.find({}, **db_names)) return render_template(head_template, head="view") + render_template( view_template, **feedback) + render_template(table_template, rows=ls_html_feedback) if "help" == command: ls_html_feedback = list(db.find({}, **db_names)) return render_template(head_template) + render_template( main_template) + render_template(table_template, rows=ls_html_feedback) return main_page()
def test_registrant_contacts(self): eq_(self.record.registrant_contacts.__class__.__name__, 'list') eq_(len(self.record.registrant_contacts), 1) eq_(self.record.registrant_contacts[0].__class__.__name__, 'Contact') eq_(self.record.registrant_contacts[0].type, yawhois.record.Contact.TYPE_REGISTRANT) eq_(self.record.registrant_contacts[0].name, "MAISON DE BIEN HOTELIERS ET EQ Farhat Riadh") eq_(self.record.registrant_contacts[0].created_on, time_parse('2013-12-13 20:00:57')) eq_(self.record.registrant_contacts[0].updated_on, None)
def test_registrant_contacts(self): eq_(self.record.registrant_contacts.__class__.__name__, 'list') eq_(len(self.record.registrant_contacts), 1) eq_(self.record.registrant_contacts[0].__class__.__name__, 'Contact') eq_(self.record.registrant_contacts[0].type, yawhois.record.Contact.TYPE_REGISTRANT) eq_(self.record.registrant_contacts[0].id, None) eq_(self.record.registrant_contacts[0].name, "GOOGLE Inc") eq_(self.record.registrant_contacts[0].organization, None) eq_(self.record.registrant_contacts[0].address, "PO BOX 2050 Moutain view CA 94042 USA") eq_(self.record.registrant_contacts[0].city, None) eq_(self.record.registrant_contacts[0].zip, None) eq_(self.record.registrant_contacts[0].state, None) eq_(self.record.registrant_contacts[0].country, None) eq_(self.record.registrant_contacts[0].country_code, None) eq_(self.record.registrant_contacts[0].phone, "+1 925 685 9600") eq_(self.record.registrant_contacts[0].fax, "+1 925 685 9620") eq_(self.record.registrant_contacts[0].email, "*****@*****.**") eq_(self.record.registrant_contacts[0].created_on, time_parse('2009-05-14 00:00:00')) eq_(self.record.registrant_contacts[0].updated_on, time_parse('2010-07-18 00:00:00'))
def test_registrant_contacts(self): eq_(self.record.registrant_contacts.__class__.__name__, 'list') eq_(len(self.record.registrant_contacts), 1) eq_(self.record.registrant_contacts[0].__class__.__name__, 'Contact') eq_(self.record.registrant_contacts[0].type, yawhois.record.Contact.TYPE_REGISTRANT) eq_(self.record.registrant_contacts[0].id, "DUP430692088") eq_(self.record.registrant_contacts[0].name, "Google Ireland Holdings") eq_(self.record.registrant_contacts[0].organization, "Google Ireland Holdings") eq_(self.record.registrant_contacts[0].address, "70 Sir John Rogersons Quay") eq_(self.record.registrant_contacts[0].city, "Dublin") eq_(self.record.registrant_contacts[0].zip, "2") eq_(self.record.registrant_contacts[0].state, "IE") eq_(self.record.registrant_contacts[0].country, None) eq_(self.record.registrant_contacts[0].country_code, "IE") eq_(self.record.registrant_contacts[0].phone, None) eq_(self.record.registrant_contacts[0].fax, None) eq_(self.record.registrant_contacts[0].email, None) eq_(self.record.registrant_contacts[0].created_on, time_parse('2013-04-21 01:05:35')) eq_(self.record.registrant_contacts[0].updated_on, time_parse('2013-04-21 01:05:35'))
def test_admin_contacts(self): eq_(self.record.admin_contacts.__class__.__name__, 'list') eq_(len(self.record.admin_contacts), 1) eq_(self.record.admin_contacts[0].__class__.__name__, 'Contact') eq_(self.record.admin_contacts[0].type, yawhois.record.Contact.TYPE_ADMINISTRATIVE) eq_(self.record.admin_contacts[0].id, "DUP142437129") eq_(self.record.admin_contacts[0].name, "Tsao Tu") eq_(self.record.admin_contacts[0].organization, "Tu Tsao") eq_(self.record.admin_contacts[0].address, "70 Sir John Rogersons Quay") eq_(self.record.admin_contacts[0].city, "Dublin") eq_(self.record.admin_contacts[0].zip, "2") eq_(self.record.admin_contacts[0].state, "IE") eq_(self.record.admin_contacts[0].country, None) eq_(self.record.admin_contacts[0].country_code, "IE") eq_(self.record.admin_contacts[0].phone, None) eq_(self.record.admin_contacts[0].fax, None) eq_(self.record.admin_contacts[0].email, None) eq_(self.record.admin_contacts[0].created_on, time_parse('2013-04-21 01:05:35')) eq_(self.record.admin_contacts[0].updated_on, time_parse('2013-04-21 01:05:35'))
def test_admin_contacts(self): eq_(self.record.admin_contacts.__class__.__name__, 'list') eq_(len(self.record.admin_contacts), 1) eq_(self.record.admin_contacts[0].__class__.__name__, 'Contact') eq_(self.record.admin_contacts[0].type, yawhois.record.Contact.TYPE_ADMINISTRATIVE) eq_(self.record.admin_contacts[0].id, "QR1-SMALL") eq_(self.record.admin_contacts[0].name, None) eq_(self.record.admin_contacts[0].organization, "QWE RTY") eq_(self.record.admin_contacts[0].address, "13 RUE DE LA PAIX\n75003 PARIS\nFRANCE") eq_(self.record.admin_contacts[0].phone, "+33.144887967") eq_(self.record.admin_contacts[0].updated_on, time_parse('2010-08-02 14:48:21 +02:00'))
def test_registrant_contacts(self): eq_(self.record.registrant_contacts.__class__.__name__, 'list') eq_(len(self.record.registrant_contacts), 1) eq_(self.record.registrant_contacts[0].__class__.__name__, 'Contact') eq_(self.record.registrant_contacts[0].type, yawhois.record.Contact.TYPE_REGISTRANT) eq_(self.record.registrant_contacts[0].id, "FBB1-SMALL") eq_(self.record.registrant_contacts[0].name, "FOO BAR BAZ") eq_(self.record.registrant_contacts[0].organization, "FOO BAR BAZ INC") eq_(self.record.registrant_contacts[0].address, "116 RUE DE LA PAIX\n75001 PARIS\nFRANCE") eq_(self.record.registrant_contacts[0].phone, "+33.123456651") eq_(self.record.registrant_contacts[0].fax, "+33.123456660") eq_(self.record.registrant_contacts[0].updated_on, time_parse('2011-01-13 15:45:18 +01:00'))
def test_technical_contacts(self): eq_(self.record.technical_contacts.__class__.__name__, 'list') eq_(len(self.record.technical_contacts), 1) eq_(self.record.technical_contacts[0].__class__.__name__, 'Contact') eq_(self.record.technical_contacts[0].type, yawhois.record.Contact.TYPE_TECHNICAL) eq_(self.record.technical_contacts[0].id, "GOOG-SMALL") eq_(self.record.technical_contacts[0].name, None) eq_(self.record.technical_contacts[0].organization, "GOOGLE DNS MASTER") eq_(self.record.technical_contacts[0].address, "GOOGLE\n22, RUE DE LA PAIX\n75008 PARIS\nFRANCE") eq_(self.record.technical_contacts[0].phone, "+33.821845353") eq_(self.record.technical_contacts[0].fax, "+33.821845354") eq_(self.record.technical_contacts[0].updated_on, time_parse('2011-05-18 09:35:37 +02:00'))
def create(): """ Handles PUT request on http://localhost:<port>/create Creates an item: attributes of the item should be specified with json. return: str (bool), True if succesful """ args = request.get_json(force=True) args['date_created'] = str(datetime.now().date()) if "date_deadline" in args: try: args["date_deadline"] = str( time_parse(args["date_deadline"]).date()) except ValueError: return "date_deadline_format invalid; try YYYY-MM-DD or see dateutil.parser.parse\n" feedback = db.insert_one(args, **db_names) return str(feedback.acknowledged)
def test_registrant_contacts(self): eq_(self.record.registrant_contacts.__class__.__name__, 'list') eq_(len(self.record.registrant_contacts), 1) eq_(self.record.registrant_contacts[0].type, yawhois.record.Contact.TYPE_REGISTRANT) eq_(self.record.registrant_contacts[0].id, "ANO00-FRNIC") eq_(self.record.registrant_contacts[0].name, "Ano Nymous") eq_(self.record.registrant_contacts[0].organization, None) eq_(self.record.registrant_contacts[0].address, None) eq_(self.record.registrant_contacts[0].city, None) eq_(self.record.registrant_contacts[0].zip, None) eq_(self.record.registrant_contacts[0].state, None) eq_(self.record.registrant_contacts[0].country, None) eq_(self.record.registrant_contacts[0].country_code, None) eq_(self.record.registrant_contacts[0].phone, None) eq_(self.record.registrant_contacts[0].fax, None) eq_(self.record.registrant_contacts[0].email, None) eq_(self.record.registrant_contacts[0].updated_on, time_parse('2007-09-03 00:00:00 UTC'))
def test_technical_contacts(self): eq_(self.record.technical_contacts.__class__.__name__, 'list') eq_(len(self.record.technical_contacts), 1) eq_(self.record.technical_contacts[0].__class__.__name__, 'Contact') eq_(self.record.technical_contacts[0].id, "MM193020") eq_(self.record.technical_contacts[0].name, "Domain Provisioning") eq_(self.record.technical_contacts[0].organization, "MarkMonitor, Inc.") eq_(self.record.technical_contacts[0].address, "10400 Overland Road PMB 155\nBoise\n83709-1433\nID\nUS") eq_(self.record.technical_contacts[0].city, None) eq_(self.record.technical_contacts[0].zip, None) eq_(self.record.technical_contacts[0].state, None) eq_(self.record.technical_contacts[0].country, None) eq_(self.record.technical_contacts[0].country_code, None) eq_(self.record.technical_contacts[0].phone, None) eq_(self.record.technical_contacts[0].fax, None) eq_(self.record.technical_contacts[0].email, "*****@*****.**") eq_(self.record.technical_contacts[0].created_on, time_parse('2011-02-03 18:24:34'))
def test_technical_contacts(self): eq_(self.record.technical_contacts.__class__.__name__, 'list') eq_(len(self.record.technical_contacts), 1) eq_(self.record.technical_contacts[0].__class__.__name__, 'Contact') eq_(self.record.technical_contacts[0].id, "WEBAREAL-CZ") eq_(self.record.technical_contacts[0].name, "Jaroslav Hansal") eq_(self.record.technical_contacts[0].organization, None) eq_(self.record.technical_contacts[0].address, "Rudolfovská tř. 247/85\nČeské Budějovice\n37001\nCZ") eq_(self.record.technical_contacts[0].city, None) eq_(self.record.technical_contacts[0].zip, None) eq_(self.record.technical_contacts[0].state, None) eq_(self.record.technical_contacts[0].country, None) eq_(self.record.technical_contacts[0].country_code, None) eq_(self.record.technical_contacts[0].phone, None) eq_(self.record.technical_contacts[0].fax, None) eq_(self.record.technical_contacts[0].email, "*****@*****.**") eq_(self.record.technical_contacts[0].created_on, time_parse('2009-04-10 14:48:02'))
def test_technical_contacts(self): eq_(self.record.technical_contacts.__class__.__name__, 'list') eq_(len(self.record.technical_contacts), 1) eq_(self.record.technical_contacts[0].__class__.__name__, 'Contact') eq_(self.record.technical_contacts[0].id, "ID005359") eq_(self.record.technical_contacts[0].name, None) eq_(self.record.technical_contacts[0].organization, "FO-umsitingin") eq_(self.record.technical_contacts[0].address, "Hoydalsvegur 19, Postboks 1255") eq_(self.record.technical_contacts[0].city, "Torshavn") eq_(self.record.technical_contacts[0].zip, "110") eq_(self.record.technical_contacts[0].state, None) eq_(self.record.technical_contacts[0].country, None) eq_(self.record.technical_contacts[0].country_code, "FO") eq_(self.record.technical_contacts[0].phone, "+298.322400") eq_(self.record.technical_contacts[0].fax, None) eq_(self.record.technical_contacts[0].email, None) eq_(self.record.technical_contacts[0].created_on, time_parse('2010-07-21 19:11:55'))
def test_technical_contacts(self): eq_(self.record.technical_contacts.__class__.__name__, "list") eq_(len(self.record.technical_contacts), 1) eq_(self.record.technical_contacts[0].__class__.__name__, "Contact") eq_(self.record.technical_contacts[0].type, yawhois.record.Contact.TYPE_TECHNICAL) eq_(self.record.technical_contacts[0].id, "CID:FRAKTAL:1") eq_(self.record.technical_contacts[0].name, "Priit Haamer") eq_(self.record.technical_contacts[0].organization, None) eq_(self.record.technical_contacts[0].address, None) eq_(self.record.technical_contacts[0].city, None) eq_(self.record.technical_contacts[0].zip, None) eq_(self.record.technical_contacts[0].state, None) eq_(self.record.technical_contacts[0].country, None) eq_(self.record.technical_contacts[0].country_code, None) eq_(self.record.technical_contacts[0].phone, None) eq_(self.record.technical_contacts[0].fax, None) eq_(self.record.technical_contacts[0].email, "Not Disclosed - Visit www.eestiinternet.ee for webbased WHOIS") eq_(self.record.technical_contacts[0].created_on, time_parse("2010-12-09 16:08:33"))
def test_admin_contacts(self): eq_(self.record.admin_contacts.__class__.__name__, "list") eq_(len(self.record.admin_contacts), 1) eq_(self.record.admin_contacts[0].__class__.__name__, "Contact") eq_(self.record.admin_contacts[0].type, yawhois.record.Contact.TYPE_ADMINISTRATIVE) eq_(self.record.admin_contacts[0].id, "CID:FRAKTAL:7") eq_(self.record.admin_contacts[0].name, "Tõnu Runnel") eq_(self.record.admin_contacts[0].organization, None) eq_(self.record.admin_contacts[0].address, None) eq_(self.record.admin_contacts[0].city, None) eq_(self.record.admin_contacts[0].zip, None) eq_(self.record.admin_contacts[0].state, None) eq_(self.record.admin_contacts[0].country, None) eq_(self.record.admin_contacts[0].country_code, None) eq_(self.record.admin_contacts[0].phone, None) eq_(self.record.admin_contacts[0].fax, None) eq_(self.record.admin_contacts[0].email, "Not Disclosed - Visit www.eestiinternet.ee for webbased WHOIS") eq_(self.record.admin_contacts[0].created_on, time_parse("2010-12-10 13:35:38"))
def test_admin_contacts(self): eq_(self.record.admin_contacts.__class__.__name__, 'list') eq_(len(self.record.admin_contacts), 1) eq_(self.record.admin_contacts[0].__class__.__name__, 'Contact') eq_(self.record.admin_contacts[0].type, yawhois.record.Contact.TYPE_ADMINISTRATIVE) eq_(self.record.admin_contacts[0].id, "TT599-FRNIC") eq_(self.record.admin_contacts[0].name, "Tu Tsao") eq_(self.record.admin_contacts[0].organization, "Google France") eq_(self.record.admin_contacts[0].address, "38, avenue de l'Opera\n75002 Paris") eq_(self.record.admin_contacts[0].city, None) eq_(self.record.admin_contacts[0].zip, None) eq_(self.record.admin_contacts[0].state, None) eq_(self.record.admin_contacts[0].country, None) eq_(self.record.admin_contacts[0].country_code, "FR") eq_(self.record.admin_contacts[0].phone, "+33 6 50 33 00 10") eq_(self.record.admin_contacts[0].fax, None) eq_(self.record.admin_contacts[0].email, "*****@*****.**") eq_(self.record.admin_contacts[0].updated_on, time_parse('2009-02-24 00:00:00 UTC'))
def test_registrant_contacts(self): eq_(self.record.registrant_contacts.__class__.__name__, 'list') eq_(len(self.record.registrant_contacts), 1) eq_(self.record.registrant_contacts[0].__class__.__name__, 'Contact') eq_(self.record.registrant_contacts[0].type, yawhois.record.Contact.TYPE_REGISTRANT) eq_(self.record.registrant_contacts[0].id, "CM7-TZNIC") eq_(self.record.registrant_contacts[0].name, "Collins Mtita") eq_(self.record.registrant_contacts[0].organization, "TSN") eq_(self.record.registrant_contacts[0].address, "Dar_es_salaam\nDar_es_salaam\nP.O.BOX 9033\nTZ") eq_(self.record.registrant_contacts[0].city, None) eq_(self.record.registrant_contacts[0].zip, None) eq_(self.record.registrant_contacts[0].state, None) eq_(self.record.registrant_contacts[0].country, None) eq_(self.record.registrant_contacts[0].country_code, None) eq_(self.record.registrant_contacts[0].phone, None) eq_(self.record.registrant_contacts[0].fax, None) eq_(self.record.registrant_contacts[0].email, "*****@*****.**") eq_(self.record.registrant_contacts[0].created_on, time_parse('2010-08-30 15:46:35'))
def test_technical_contacts(self): eq_(self.record.technical_contacts.__class__.__name__, 'list') eq_(len(self.record.technical_contacts), 1) eq_(self.record.technical_contacts[0].__class__.__name__, 'Contact') eq_(self.record.technical_contacts[0].type, yawhois.record.Contact.TYPE_TECHNICAL) eq_(self.record.technical_contacts[0].id, "JN1-TZNIC") eq_(self.record.technical_contacts[0].name, "Jacob Noel") eq_(self.record.technical_contacts[0].organization, "Twiga Hosting") eq_(self.record.technical_contacts[0].address, "Dar es Salaam\nDar es Salaam\nP.O.Box\nTZ") eq_(self.record.technical_contacts[0].city, None) eq_(self.record.technical_contacts[0].zip, None) eq_(self.record.technical_contacts[0].state, None) eq_(self.record.technical_contacts[0].country, None) eq_(self.record.technical_contacts[0].country_code, None) eq_(self.record.technical_contacts[0].phone, "+255.755763951") eq_(self.record.technical_contacts[0].fax, None) eq_(self.record.technical_contacts[0].email, "*****@*****.**") eq_(self.record.technical_contacts[0].created_on, time_parse('2009-08-24 06:21:51'))
def test_registrant_contacts(self): eq_(self.record.registrant_contacts.__class__.__name__, 'list') eq_(len(self.record.registrant_contacts), 1) eq_(self.record.registrant_contacts[0].__class__.__name__, 'Contact') eq_(self.record.registrant_contacts[0].type, yawhois.record.Contact.TYPE_REGISTRANT) eq_(self.record.registrant_contacts[0].id, "A1967-FRNIC") eq_(self.record.registrant_contacts[0].name, None) eq_(self.record.registrant_contacts[0].organization, "AFNIC") eq_(self.record.registrant_contacts[0].address, "immeuble international\n2, rue Stephenson\nMontigny-Le-Bretonneux\n78181 Saint Quentin en Yvelines") eq_(self.record.registrant_contacts[0].city, None) eq_(self.record.registrant_contacts[0].zip, None) eq_(self.record.registrant_contacts[0].state, None) eq_(self.record.registrant_contacts[0].country, None) eq_(self.record.registrant_contacts[0].country_code, "FR") eq_(self.record.registrant_contacts[0].phone, None) eq_(self.record.registrant_contacts[0].fax, None) eq_(self.record.registrant_contacts[0].email, None) eq_(self.record.registrant_contacts[0].updated_on, time_parse('2009-12-02 00:00:00 UTC'))
def test_technical_contacts(self): eq_(self.record.technical_contacts.__class__.__name__, 'list') eq_(len(self.record.technical_contacts), 1) eq_(self.record.technical_contacts[0].__class__.__name__, 'Contact') eq_(self.record.technical_contacts[0].type, yawhois.record.Contact.TYPE_TECHNICAL) eq_(self.record.technical_contacts[0].id, "NFC1-FRNIC") eq_(self.record.technical_contacts[0].name, "NIC France Contact") eq_(self.record.technical_contacts[0].organization, "AFNIC") eq_(self.record.technical_contacts[0].address, "immeuble international\n2, rue Stephenson\nMontigny le Bretonneux\n78181 Saint Quentin en Yvelines Cedex") eq_(self.record.technical_contacts[0].city, None) eq_(self.record.technical_contacts[0].zip, None) eq_(self.record.technical_contacts[0].state, None) eq_(self.record.technical_contacts[0].country, None) eq_(self.record.technical_contacts[0].country_code, "FR") eq_(self.record.technical_contacts[0].phone, "+33 1 39 30 83 00") eq_(self.record.technical_contacts[0].fax, None) eq_(self.record.technical_contacts[0].email, "*****@*****.**") eq_(self.record.technical_contacts[0].updated_on, time_parse('2005-08-23 00:00:00 UTC'))
def test_technical_contacts(self): eq_(self.record.technical_contacts.__class__.__name__, 'list') eq_(len(self.record.technical_contacts), 1) eq_(self.record.technical_contacts[0].__class__.__name__, 'Contact') eq_(self.record.technical_contacts[0].type, yawhois.record.Contact.TYPE_TECHNICAL) eq_(self.record.technical_contacts[0].id, "MC239-FRNIC") eq_(self.record.technical_contacts[0].name, "MARKMONITOR CCOPS") eq_(self.record.technical_contacts[0].organization, "eMarkmonitor Inc. dba MarkMonitor") eq_(self.record.technical_contacts[0].address, "PMB 155\n10400 Overland Road\n83709-1433 Boise, Id\nUS") eq_(self.record.technical_contacts[0].city, None) eq_(self.record.technical_contacts[0].zip, None) eq_(self.record.technical_contacts[0].state, None) eq_(self.record.technical_contacts[0].country, None) eq_(self.record.technical_contacts[0].country_code, None) eq_(self.record.technical_contacts[0].phone, "+01 2083895740") eq_(self.record.technical_contacts[0].fax, None) eq_(self.record.technical_contacts[0].email, "*****@*****.**") eq_(self.record.technical_contacts[0].updated_on, time_parse('2008-10-10 00:00:00 UTC'))
def test_registrant_contacts(self): eq_(self.record.registrant_contacts.__class__.__name__, 'list') eq_(len(self.record.registrant_contacts), 1) eq_(self.record.registrant_contacts[0].__class__.__name__, 'Contact') eq_(self.record.registrant_contacts[0].type, yawhois.record.Contact.TYPE_REGISTRANT) eq_(self.record.registrant_contacts[0].id, "GI658-FRNIC") eq_(self.record.registrant_contacts[0].name, None) eq_(self.record.registrant_contacts[0].organization, "Google Inc.") eq_(self.record.registrant_contacts[0].address, "1600, Amphitheatre Parkway\n94043 Mountain View Ca") eq_(self.record.registrant_contacts[0].city, None) eq_(self.record.registrant_contacts[0].zip, None) eq_(self.record.registrant_contacts[0].state, None) eq_(self.record.registrant_contacts[0].country, None) eq_(self.record.registrant_contacts[0].country_code, "US") eq_(self.record.registrant_contacts[0].phone, "+1 650 253 0000") eq_(self.record.registrant_contacts[0].fax, "+1 650 618 8571") eq_(self.record.registrant_contacts[0].email, "*****@*****.**") eq_(self.record.registrant_contacts[0].updated_on, time_parse('2009-07-09 00:00:00 UTC'))
def test_registrant_contacts(self): eq_(self.record.registrant_contacts.__class__.__name__, 'list') eq_(len(self.record.registrant_contacts), 1) eq_(self.record.registrant_contacts[0].__class__.__name__, 'Contact') eq_(self.record.registrant_contacts[0].type, yawhois.record.Contact.TYPE_REGISTRANT) eq_(self.record.registrant_contacts[0].id, "MM12383") eq_(self.record.registrant_contacts[0].name, "DNS Admin") eq_(self.record.registrant_contacts[0].organization, "Google Inc.") eq_(self.record.registrant_contacts[0].address, "1600 Amphitheatre Parkway\nMountain View\n94043\nCA\nUS") eq_(self.record.registrant_contacts[0].city, None) eq_(self.record.registrant_contacts[0].zip, None) eq_(self.record.registrant_contacts[0].state, None) eq_(self.record.registrant_contacts[0].country, None) eq_(self.record.registrant_contacts[0].country_code, None) eq_(self.record.registrant_contacts[0].phone, None) eq_(self.record.registrant_contacts[0].fax, None) eq_(self.record.registrant_contacts[0].email, "*****@*****.**") eq_(self.record.registrant_contacts[0].created_on, time_parse('2011-05-18 23:28:26'))
def test_technical_contacts(self): eq_(self.record.technical_contacts.__class__.__name__, 'list') eq_(len(self.record.technical_contacts), 2) eq_(self.record.technical_contacts[0].__class__.__name__, 'Contact') eq_(self.record.technical_contacts[0].type, yawhois.record.Contact.TYPE_TECHNICAL) eq_(self.record.technical_contacts[0].id, "KG780-UANIC") eq_(self.record.technical_contacts[0].name, None) eq_(self.record.technical_contacts[0].organization, "Kyivstar GSM") eq_(self.record.technical_contacts[0].address, "Chervonozoryanyi Av., 51") eq_(self.record.technical_contacts[0].city, "KYIV") eq_(self.record.technical_contacts[0].zip, "03110") eq_(self.record.technical_contacts[0].state, None) eq_(self.record.technical_contacts[0].country, "UA") eq_(self.record.technical_contacts[0].country_code, None) eq_(self.record.technical_contacts[0].phone, "+380 (67) 2372213") eq_(self.record.technical_contacts[0].fax, "+380 (44) 2473954") eq_(self.record.technical_contacts[0].email, "*****@*****.**") eq_(self.record.technical_contacts[0].created_on, None) eq_(self.record.technical_contacts[0].updated_on, time_parse('2008-09-02 12:52:47'))
def filtrate(self, entry: Entry) -> bool: # 时间戳条件 default_timestamp = time.mktime( time_parse(self.filter.get('after_time', '1970.1.2')).timetuple()) after_time = max(default_timestamp, self.__get_update_time()) if entry.published_timestamp < after_time: return False # 关键词条件 include_keyword = self.filter.get('include', "").split(" ") exclude_keyword = self.filter.get('include', "").split(" ") for word in include_keyword: if word not in entry.title: return False for word in exclude_keyword: if word in entry.title: return False return True
def test_technical_contacts(self): eq_(self.record.technical_contacts.__class__.__name__, 'list') eq_(len(self.record.technical_contacts), 1) eq_(self.record.technical_contacts[0].__class__.__name__, 'Contact') eq_(self.record.technical_contacts[0].type, yawhois.record.Contact.TYPE_TECHNICAL) eq_(self.record.technical_contacts[0].id, "com-gi8-1") eq_(self.record.technical_contacts[0].name, "Google Inc.") eq_(self.record.technical_contacts[0].organization, "Google Inc.") eq_(self.record.technical_contacts[0].address, "1600 Amphitheatre Parkway Mountain View CA 94043 US") eq_(self.record.technical_contacts[0].city, None) eq_(self.record.technical_contacts[0].zip, None) eq_(self.record.technical_contacts[0].state, None) eq_(self.record.technical_contacts[0].country, "UA") eq_(self.record.technical_contacts[0].country_code, None) eq_(self.record.technical_contacts[0].phone, "+16503300100") eq_(self.record.technical_contacts[0].fax, "+16506188571") eq_(self.record.technical_contacts[0].email, "*****@*****.**") eq_(self.record.technical_contacts[0].created_on, time_parse('2013-03-31 19:13:45 +03:00')) eq_(self.record.technical_contacts[0].updated_on, None)
def post(self, token): """ Create EC Entry """ try: if token != app.config['GRAYLOG_TOKEN']: raise ValueError("Invalid Token") data_json = request.json time_string = data_json['event']['timestamp'] timestamp = time_parse(time_string).strftime("%b %d %H:%M:%S") msg = data_json['event']['message'] host = data_json['event']['source'] out = open(app.config['MKEVENT_DEAMON_PATH'], "w") out.write("<5>{ts} {host} graylog: {msg}\n".format(ts=timestamp, host=host, msg=msg)) out.close() except PermissionError: return {"error": "Cannot Access Socket"}, 500 except (ValueError, IndexError) as msg: return {"error": str(msg)}, 500 return {"message": "added"}, 200
def run(self): try: source = RSSSource.objects.get(pk=self.source_id) source.last_process_date = timezone.now() source.save() warnings.warn('Processing RSS Source: %s' % source.url) try: request = urllib2.Request(source.url) rss_file = urllib2.urlopen(request) from lxml import etree as ET tree = ET.parse(rss_file) rss_file.close() rss = tree.getroot() process_settings = source.settings items = rss.findall(process_settings['wrapper']) total_items = len(items) if source.reverse: items = reversed(items) items_counter = 0 for item in items: item_to_save = {} image_process = False image_fields = [] for field in process_settings['fields']: field_content = item.find(field['source'], rss.nsmap) if 'empty' in field: if isinstance(field['attributes'], basestring): content = field_content.attrib[ field['attributes']] else: content = {} for attribute in field['attributes']: attr = attribute[ 'target'] if 'target' in attribute else attribute[ 'source'] content[attr] = field_content.attrib[ attribute['source']] if 'type' in field: if field["type"] == "image": image_process = True if "empty" in field: image_url = content[field["location"]] else: content = field_content.text image_url = content name = field[ 'target'] if 'target' in field else field[ 'source'] image_fields.append({ 'name': name, 'url': image_url }) elif field["type"] == "date": from dateutil.parser import parse as time_parse content = time_parse( field_content.text ).strftime( field['save_format'] ) if 'save_format' in field else field_content.text else: content = field_content.text elif "empty" not in field: content = field_content.text name = field['target'] if 'target' in field else field[ 'source'] item_to_save[name] = content content_regex = r'' for unique_field in process_settings["unique"]: field_regex = '"%s":"%s"' % ( unique_field, item_to_save[unique_field]) content_regex += r"(?=.*" + re.escape( field_regex) + r")" warnings.warn('Content regex to filter by: %s' % content_regex) qs = RSSImport.objects.filter(source=source, content__regex=content_regex) if len(qs) == 0: imported_item = RSSImport.objects.create( source=source, content=item_to_save) else: imported_item = qs[0] qs = qs.exclude(id=imported_item.pk) for old_import in qs: old_import.delete() if imported_item.status == 'scheduled': if image_process: imported_item.status = 'processing' imported_item.save() for image_field in image_fields: self._save_image(imported_item, image_field['name'], image_field['url'], len(image_fields)) else: imported_item.status = 'complete' imported_item.enabled = True imported_item.save() source.last_import_date = timezone.now() source.save() items_counter += 1 except Exception as e: warnings.warn('Error processing the request: %s' % str(e)) warnings.warn('Processed %s of %s items' % (str(items_counter), str(total_items))) finally: connection.close() warnings.warn('Finished RSS processing')
def fetch_arxiv(): basic_url = 'http://export.arxiv.org/api/query?'\ 'search_query=cat:cs.CV+OR+cat:cs.AI+OR+cat:cs.LG+OR+cat:cs.CL+OR'\ '+cat:cs.NE+OR+cat:stat.ML&sortBy=lastUpdatedDate' start_index = 0 max_index = 1000 result_per_query = 100 num_add = 0 num_skipped = 0 for i in range(start_index, max_index, result_per_query): url = basic_url + "&start=%i&max_results=%i" % (i, result_per_query) print(url) try: response = libreq.urlopen(url).read() parse = feedparser.parse(response) for entry in parse.entries: try: paper_id = entry["id"] if PaperItem.objects.filter(paper_id=paper_id).exists(): num_skipped += 1 else: paper = PaperItem() paper.paper_id = paper_id paper.paper_title = re.sub("\n+", " ", entry["title"]) paper.created_by = 'spider' paper.created_date = time_parse(entry["published"]) paper.update_date = time_parse(entry["updated"]) for s in entry['links']: if "title" in s and s["title"] == "pdf": paper.paper_link = s["href"] paper.page_comments = entry["arxiv_comment"][:250] if "arxiv_comment" in entry else "" paper.summary = re.sub("\n+", " ", entry["summary"]) paper.code_url = "" paper.save() for author_name_ in entry['authors']: author = PaperAuthor() author.author_name = author_name_["name"] author.paper_item = paper author.save() for category_ in entry['tags']: category = PaperCategory() category.paper_item = paper category.term = category_["term"][:20] if category_["term"] == entry["arxiv_primary_category"]["term"]: category.is_primary = True category.save() num_add += 1 except Exception as e: print('Error when parsing the papers: ', e) except Exception as e: print('Error: ', e) return num_add, num_skipped
def test_created_on(self): eq_(self.record.created_on.__class__.__name__, "datetime") eq_(self.record.created_on, time_parse("2009-04-17 12:22:49 UTC"))
def parse_json(url): global connections is_stack = True cur_sid = request.sid connections[cur_sid].session['current_views'] = [] response = requests.get(url) data = response.json() num_feeds = 0 if len(data["entries"]) == 0: # not a stack is_stack = False url = url_from_id(connections[cur_sid].session['id'], stack=False) response = requests.get(url) data = response.json() num_feeds = 0 thetas = ThetaIterator( min(app.config["MAX_FEEDS"], len(data["entries"]))) thetas = ThetaIterator(min(app.config["MAX_FEEDS"], len(data["entries"]))) iters = 0 text_thetas = ThetaTextIterator() for cur_ind, entry in enumerate(data["entries"]): iters += 1 theta = thetas.next() text_theta = text_thetas.next() unit_theta = 360 / min(app.config["MAX_FEEDS"], len(data["entries"])) num_feeds += 1 parsed_images = [] cur_theta = -1 * float(theta[2:-2]) theta_adj = 10 pos_x = str(10 * cos(radians(cur_theta + unit_theta + theta_adj + 50 / 4))) pos_y = str(10 * sin(radians(cur_theta + unit_theta + theta_adj + 50 / 4))) current_level = ((cur_ind) // app.config["MAX_FEEDS"]) height_offset = 5 image_height = str((3 / 4) + 9.25 * current_level + height_offset) button_height = str(1 / 2 + 5 + 9.25 * (current_level - 1) + height_offset) person_move = str(2.2 + 1 / 2 + 5 + 9.25 * (current_level - 1) + height_offset) try: entry['name'] except KeyError: is_stack = False if is_stack: name = entry['name'] for img_url in entry["preview"]: parsed_url = img_url[:-2] + '_l' parsed_url = re.sub(r'https://', r'http://', parsed_url) parsed_images.append(parsed_url) image = random.choice(parsed_images) str_id = str(entry["id"]) else: try: name = entry['item']['description'] date = time_parse( entry['item']['posted_on']).strftime("%m/%d/%y") name = "[" + date + "] " + name image = entry['item']['image_url'][:-2] str_id = str(entry['item']['id']) except TypeError: thetas.previous() text_thetas.previous() continue name = shorten_message(name) if not is_stack: sort_index = str(time_parse(entry['item']['posted_on'])) else: sort_index = name current_view = { "id": "view" + str_id, "hash_id": "#view" + str_id, "name": name, "text_pos_height": calculate_text_pos_height(name), "image": image, "button_height": person_move, "button_pos": ' '.join([pos_x, button_height, pos_y]), "button_rot": ' '.join(["0", str(-1 * (cur_theta + unit_theta + 50 / 2)), "0"]), "image_pos": ' '.join(["0", image_height, "0"]), "theta": theta, "level": str(current_level + 1), "is_stack": is_stack, "sort_index": sort_index } connections[cur_sid].session['current_views'].append(current_view) if not is_stack and (iters == 50): cur_ind += 1 theta = thetas.next() text_theta = text_thetas.next() unit_theta = 360 / min(app.config["MAX_FEEDS"], len(data["entries"])) num_feeds += 1 cur_theta = -1 * float(theta[2:-2]) pos_x = str(10 * cos(radians(cur_theta + unit_theta + theta_adj + 50 / 4))) pos_y = str(10 * sin(radians(cur_theta + unit_theta + theta_adj + 50 / 4))) current_level = ((cur_ind) // app.config["MAX_FEEDS"]) image_height = str((3 / 4) + 9.25 * current_level + height_offset) button_height = str(1 / 2 + 5 + 9.25 * (current_level - 1) + height_offset) person_move = str(2.2 + 1 / 2 + 5 + 9.25 * (current_level - 1) + height_offset) try: str_id = re.findall(r"_\d+", url)[-1][1:] + "?start=" + str( int(re.findall(r"\?start=[\d]+", url)[-1][7:]) + 50) except IndexError: str_id = re.findall(r"_\d+", url)[-1][1:] + "?start=50" str_id = str_id.replace("?", "question__mark").replace("=", "equals__sign") current_view = { "id": "view" + str_id, "hash_id": "#view" + str_id, "name": "More", "text_pos_height": calculate_text_pos_height(""), "image": "/static/next.png", "button_height": person_move, "button_pos": ' '.join([pos_x, button_height, pos_y]), "button_rot": ' '.join(["0", str(-1 * (cur_theta + unit_theta + 50 / 2)), "0"]), "image_pos": ' '.join(["0", image_height, "0"]), "theta": theta, "level": str(current_level + 1), "is_stack": True, "sort_index": "9999999" } connections[cur_sid].session['current_views'].append(current_view) connections[cur_sid].session['current_views'] = \ sorted(connections[cur_sid].session['current_views'], key=lambda item:item['sort_index'], reverse=False) return True