Django==1.8.5
django-flat-theme==1.1.1
mysql-python==1.2.5
gunicorn==19.4.1
pytz==2015.6
python-memcached==1.57
django-debug-toolbar==1.4
$ pip install -r requirements.txt
# coding: utf-8
from __future__ import print_function
from __future__ import unicode_literals
import os
import sys
from oauthlib.oauth2.rfc6749.clients import WebApplicationClient
from requests_oauthlib import OAuth2Session
# VK не присылает scope после получения токена. Чтобы oauthlib не
# выбрасывала исключение, нужно поставить этот флажок:
os.environ.setdefault('OAUTHLIB_RELAX_TOKEN_SCOPE', '1')
if sys.version_info.major < 3:
# PY2
input = raw_input
# Эти данные Вы должны получить после создания приложения
client_id = 'сюда подставляем ID'
client_secret = 'а сюда секретный ключ'
authorization_base_url = 'https://oauth.vk.com/authorize'
token_url = 'https://oauth.vk.com/access_token'
api_client = WebApplicationClient(
client_id=client_id,
default_token_placement='query'
)
vk = OAuth2Session(scope='messages', client=api_client)
# получаем адрес для авторизации приложения
authorization_url, state = vk.authorization_url(authorization_base_url)
print('Пройдите по указанному адресу и авторизуйтесь:', authorization_url)
auth_resp = input('Введите адрес, на который вы были перенаправлены после '
'прохождения авторизации:')
auth_resp = auth_resp.replace('#', '?') # иначе код сам не найдется
vk.fetch_token(token_url, client_secret=client_secret,
authorization_response=auth_resp)
# так можно получит список диалогов
response = vk.get('https://api.vk.com/method/messages.getDialogs',
params={'v': '5.28'}).json()
print(response.json())
[program:yoursite]
command=uwsgi --ini /etc/uwsgi.ini
autostart=true
autorestart=true
stderr_logfile = /tmp/uwsgi-err.log
stdout_logfile = /tmp/uwsgi.log
[uwsgi]
chdir = /home/projectroot
wsgi-file = /home/projectroot/wsgi.py
home = /home/projectroot/.env
logto = /var/log/uwsgi.log
master = true
processes = 10
socket = /tmp/yoursite.sock
vacuum = true
touch-reload = /tmp/yoursite.reload
server {
listen 80;
server_name yoursite.com;
access_log /home/var/log/nginx/yoursite.nginx.access.log;
error_log /home/var/log/nginx/yoursite.nginx.error.log;
location / {
uwsgi_pass unix:///tmp/yoursite.sock;
include uwsgi_params;
}
location /static/ {
alias /home/yoursite/assets/;
}
}