コード例 #1
0
 def __init__(self, pod, username='', password='', schema='https'):
     """
     :param pod: The complete url of the diaspora pod to use.
     :type pod: str
     :param username: The username used to log in.
     :type username: str
     :param password: The password used to log in.
     :type password: str
     """
     self.pod = pod
     self._session = requests.Session()
     self._login_data = {}
     self._userdata = {}
     self._token = ''
     self._diaspora_session = ''
     try:
         self._setlogin(username, password)
     except requests.exceptions.MissingSchema:
         self.pod = '{0}://{1}'.format(schema, self.pod)
         warnings.warn('schema was missing')
     finally:
         pass
     try:
         self._setlogin(username, password)
     except Exception as e:
         raise errors.LoginError(
             'cannot create login data (caused by: {0})'.format(e))
コード例 #2
0
    def __init__(self, pod, username, password, schema='https'):
        """
		:param pod: The complete url of the diaspora pod to use.
		:type pod: str
		:param username: The username used to log in.
		:type username: str
		:param password: The password used to log in.
		:type password: str
		"""
        self.pod = pod
        self._session = requests.Session()
        self._login_data = {'user[remember_me]': 1, 'utf8': '✓'}
        self._userdata = {}
        self._token = ''
        self._diaspora_session = ''
        self._fetch_token_from = 'stream'
        try:
            self._setlogin(username, password)
        except requests.exceptions.MissingSchema:
            self.pod = '{0}://{1}'.format(schema, self.pod)
            warnings.warn('schema was missing')
            try:
                self._setlogin(username, password)
            except Exception as e:
                raise errors.LoginError(
                    'cannot create login data (caused by: {0})'.format(e))
        self._cookies = self._fetchcookies()
コード例 #3
0
 def _login(self):
     """Handles actual login request.
     Raises LoginError if login failed.
     """
     request = self.post('users/sign_in', data=self._login_data)
     if request.status_code not in [200, 201]:
         raise errors.LoginError('{0}: login failed'.format(
             request.status_code))
     self._diaspora_session = request.cookies['_diaspora_session']
コード例 #4
0
ファイル: connection.py プロジェクト: Faldrian/diaspy
 def _login(self):
     """Handles actual login request.
     Raises LoginError if login failed.
     """
     request = self.post('users/sign_in',
                         data=self._login_data,
                         allow_redirects=False)
     if request.status_code != 302:
         raise errors.LoginError('{0}: login failed'.format(request.status_code))
コード例 #5
0
ファイル: connection.py プロジェクト: Faldrian/diaspy
 def login(self, remember_me=1):
     """This function is used to log in to a pod.
     Will raise LoginError if password or username was not specified.
     """
     if not self._login_data['user[username]'] or not self._login_data['user[password]']:
         raise errors.LoginError('username and/or password is not specified')
     self._login_data['user[remember_me]'] = remember_me
     status = self._login()
     self._login_data = {}
     return self
コード例 #6
0
 def login(self, username='', password=''):
     """This function is used to log in to a pod.
     Will raise LoginError if password or username was not specified.
     """
     if username and password: self._setlogin(username, password)
     if not self._login_data['user[username]'] or not self._login_data[
             'user[password]']:
         raise errors.LoginError(
             'username and/or password is not specified')
     self._login()
     self._login_data = {}