• Python как перебрать значение по ключу в список?

    aRegius
    @aRegius
    Python Enthusiast
    from collections import defaultdict
    
    pos_group_dict = defaultdict(list)
    for data_dict in data:
          pos_group_dict[(data_dict['name'], data_dict['id'])].append(data_dict['pos'])
    new_data = [{'name': key[0], 'id': key[1], 'pos': value} for key, value in pos_group_dict.items()]
    Ответ написан
    Комментировать
  • Как залогиниться на сайте при помощи python requests?

    hottabxp
    @hottabxp Куратор тега Python
    Сначала мы жили бедно, а потом нас обокрали..
    Да тут делов на 2минуты:
    import requests
    from bs4 import BeautifulSoup
    import time
    headers = {'user-Agent': 'Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:72.0) Gecko/20100101 Firefox/72.0'}
    
    data = {'authenticity_token':'',
    		'email':'', # Email
    		'password':''  # Пароль
    		}
    
    url = 'https://www.strava.com/session'
    
    session = requests.Session() # Сессия
    
    def get_token():# Метод, для получения токена
    	response = session.post(url,headers=headers)
    	soup = BeautifulSoup(response.text,"html.parser")
    	token = soup.find('input',{'name':'authenticity_token'}).get('value')
    	return token # Возвращает токен
    
    
    def auth(): # Метод, для авторизации
    	response = session.post(url,headers=headers,data=data)
    	return response.text
    
    data['authenticity_token'] = get_token() # Вызывает метод для получения токена, и результат заносим в словарь
    
    time.sleep(2) # Пауза 2 сек :)
    html = auth() # Авторизируемся. В html будет наш ответ после авторизации
    
    if 'Log Out' in html: # Если строка 'Log Out' есть в html, значит авторизация прошла успешно
    	print('Login OK!')
    else:
    	print('Login Error!')

    Если что не понятно, пишите.
    Ответ написан
    1 комментарий