示例#1
0
def init(step=0):
    global minParticipants
    browser.get('https://teams.microsoft.com/_#/calendarv2'
                )  # open calendar tab in teams
    sleep(1)
    minParticipants = data.get('minimumParticipants', minParticipants)
    success_step = 0
    # login step
    if step <= 0:
        login(data, check=False, browser=browser)
        success_step = 1
    # calendar access step
    if step <= 1:
        wait_and_find_element_by_xpath(
            browser, '//button[@title="Switch your calendar view"]',
            timeOutDelay)
        while wait_and_find_element_by_xpath(
                browser, '//button[@title="Switch your calendar view"]',
                timeOutDelay).get_attribute(
                    'name'
                ) != "Week":  # change calender work-week view to week view
            wait_and_find_element_by_xpath(
                browser, '//button[@title="Switch your calendar view"]',
                timeOutDelay).click()
            wait_and_find_element_by_xpath(browser, '//button[@name="Week"]',
                                           timeOutDelay).click()
        success_step = 2
    print('INFO: Initialized Succesfully at {}'.format(datetime.now()))
    return success_step
示例#2
0
 def __init__(self):
     self.url_pattern = "{0}{1}".format(cfg.apiurl, cfg.token_service)
     self.consumer = credentials.kafkaConsumerConnection()
     self.red = credentials.redisConnection()
     self.consumer.subscribe([cfg.kafkatopic])
     self.token = credentials.login()
     if self.token:
         self.headers = {cfg.headers: self.token}
     else:
         print 'login failed, please try again'
示例#3
0
def all():
	user, password = credentials.login()
	session = scrap.loguc3m(user, password)

	if session is None:
		return

	grades = scrap.access_directory(session=session)

	if grades is None:
		return

	coding.from_unicode_to_ascii(grades)
	saving.grades_to_csv(grades, 'degree_names')

	iterate_over_grades(grades, session)
示例#4
0
def engineering():

	user, password = credentials.login()
	session = scrap.loguc3m(user, password)

	if session is None:
		return

	grades = scrap.access_directory(session=session)

	if grades is None:
		return

	coding.from_unicode_to_ascii(grades)

	eng_grades = []
	for grade in grades:
		if 'Ingenieria' in grade['name']:
			eng_grades.append(grade)

	saving.grades_to_csv(eng_grades, 'degree_names_engineering')

	iterate_over_grades(eng_grades, session)
示例#5
0
def main():
    """ Пример получения последнего сообщения со стены """

    login, password = credentials.login(), credentials.password()
    vk_session = vk_api.VkApi(login, password)

    try:
        vk_session.auth(token_only=True)
    except vk_api.AuthError as error_msg:
        print(error_msg)
        return

    vk = vk_session.get_api()
    """ VkApi.method позволяет выполнять запросы к API. В этом примере
        используется метод wall.get (https://vk.com/dev/wall.get) с параметром
        count = 1, т.е. мы получаем один последний пост со стены текущего
        пользователя.
    """

    items = set()

    with open(f'events_{location_name}.txt', 'r') as fp:
        num_lines = sum(1 for ln in fp)
        events_count = 0
        fp.seek(0)
        for event in fp:
            events_count += 1
            print(f'{events_count}/{num_lines}')
            print(f'Event {event}')
            offset = 0
            while True:
                try:
                    q = vk.groups.getMembers(group_id=event, offset=offset)
                    items.update(q['items'])
                    if len(q['items']) < 1000:
                        break
                    offset += 1000
                except vk_api.exceptions.ApiError as e:
                    print(e)
                    break
                except:
                    break

            offset = 0
            while True:
                try:
                    q = vk.groups.getMembers(group_id=event,
                                             offset=offset,
                                             filter='unsure')
                    items.update(q['items'])
                    if len(q['items']) < 1000:
                        break
                    offset += 1000
                except vk_api.exceptions.ApiError as e:
                    print(e)
                    break
                except:
                    break

            print(len(items))
            pass

    with open(f'events_members_{location_name}.txt', 'w') as f:
        for item in items:
            f.write("%s\n" % item)