Advertisement
Guest User

Untitled

a guest
Nov 21st, 2019
113
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 4.23 KB | None | 0 0
  1. # views.py
  2. from django.http import JsonResponse
  3. from django.shortcuts import render
  4. from bs4 import BeautifulSoup as BS
  5. import json
  6. import requests
  7. import html5lib,time
  8. from selenium import webdriver
  9. from selenium.webdriver.common.by import By
  10. from selenium.common.exceptions import NoSuchElementException
  11.  
  12. from django.utils.html import escape
  13.  
  14.  
  15. def JsonOB(request,email,passw):
  16. try:
  17. browser = webdriver.PhantomJS(executable_path='C:\\drivers\\phantomjs-2.1.1-windows\\bin\\phantomjs')
  18. url = 'http://applecity.ge/login'
  19. browser.get(url)
  20. path = browser.find_element_by_xpath('//*[@id="userSigninLogin"]')
  21. path.send_keys(email)
  22. time.sleep(1)
  23. path = browser.find_element_by_xpath('//*[@id="userSigninPassword"]')
  24. path.send_keys(passw)
  25. time.sleep(1)
  26. path = browser.find_element_by_xpath('//button[@type="submit"]')
  27. path.click()
  28. time.sleep(1)
  29. url = 'http://applecity.ge/profile'
  30. browser.get(url)
  31. newurl = browser.page_source
  32. soup = BS(newurl,'lxml')
  33. soup = soup.find_all('div', class_='form-group') or None
  34. found = ''
  35.  
  36. for i in soup:
  37. # found = i.find('input',id='accountName').get('value','')
  38. if i.find('input').get('id','') == 'accountName':
  39. found = i.find('input').get('value','')
  40. data ={
  41. 'status': 200,
  42. 'message': found
  43. }
  44. browser.close()
  45.  
  46. return JsonResponse(data)
  47.  
  48. except:
  49.  
  50. return JsonResponse({
  51. 'status': 401,
  52. 'message': 'bad credentials'
  53. })
  54. raise
  55.  
  56.  
  57. # urls.py
  58. from django.contrib import admin
  59. from django.urls import path, include
  60.  
  61.  
  62. from .views import JsonOB
  63.  
  64. urlpatterns = [
  65.  
  66. path('email=<email>&passw=<passw>', JsonOB),
  67.  
  68. ]
  69. #settings.py
  70.  
  71.  
  72. import os
  73.  
  74.  
  75. BASE_DIR = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))
  76.  
  77. SECRET_KEY = 'nc0#+*9@#lt405_%ob^r_(#5qg9^_)$%-4f=hu9xh*q5#b%i^y'
  78.  
  79.  
  80. DEBUG = False
  81.  
  82. ALLOWED_HOSTS = [u'vakho.pythonanywhere.com']
  83.  
  84.  
  85. # Application definition
  86.  
  87. INSTALLED_APPS = [
  88. 'django.contrib.admin',
  89. 'django.contrib.auth',
  90. 'django.contrib.contenttypes',
  91. 'django.contrib.sessions',
  92. 'django.contrib.messages',
  93. 'django.contrib.staticfiles',
  94. ]
  95.  
  96. MIDDLEWARE = [
  97. 'django.middleware.security.SecurityMiddleware',
  98. 'django.contrib.sessions.middleware.SessionMiddleware',
  99. 'django.middleware.common.CommonMiddleware',
  100. 'django.middleware.csrf.CsrfViewMiddleware',
  101. 'django.contrib.auth.middleware.AuthenticationMiddleware',
  102. 'django.contrib.messages.middleware.MessageMiddleware',
  103. 'django.middleware.clickjacking.XFrameOptionsMiddleware',
  104. ]
  105.  
  106. ROOT_URLCONF = 'mysite.urls'
  107.  
  108. TEMPLATES = [
  109. {
  110. 'BACKEND': 'django.template.backends.django.DjangoTemplates',
  111. 'DIRS': [os.path.join(BASE_DIR, 'templates')],
  112. 'APP_DIRS': True,
  113. 'OPTIONS': {
  114. 'context_processors': [
  115. 'django.template.context_processors.debug',
  116. 'django.template.context_processors.request',
  117. 'django.contrib.auth.context_processors.auth',
  118. 'django.contrib.messages.context_processors.messages',
  119. ],
  120. },
  121. },
  122. ]
  123.  
  124. WSGI_APPLICATION = 'mysite.wsgi.application'
  125.  
  126.  
  127.  
  128. DATABASES = {
  129. 'default': {
  130. 'ENGINE': 'django.db.backends.sqlite3',
  131. 'NAME': os.path.join(BASE_DIR, 'db.sqlite3'),
  132. }
  133. }
  134.  
  135.  
  136.  
  137. AUTH_PASSWORD_VALIDATORS = [
  138. {
  139. 'NAME': 'django.contrib.auth.password_validation.UserAttributeSimilarityValidator',
  140. },
  141. {
  142. 'NAME': 'django.contrib.auth.password_validation.MinimumLengthValidator',
  143. },
  144. {
  145. 'NAME': 'django.contrib.auth.password_validation.CommonPasswordValidator',
  146. },
  147. {
  148. 'NAME': 'django.contrib.auth.password_validation.NumericPasswordValidator',
  149. },
  150. ]
  151.  
  152.  
  153.  
  154. LANGUAGE_CODE = 'en-us'
  155.  
  156. TIME_ZONE = 'UTC'
  157.  
  158. USE_I18N = True
  159.  
  160. USE_L10N = True
  161.  
  162. USE_TZ = True
  163.  
  164.  
  165.  
  166. STATIC_URL = '/static/'
  167.  
  168.  
  169. MEDIA_ROOT = u'/home/vakho/mysite/media'
  170. MEDIA_URL = '/media/'
  171. STATIC_ROOT = u'/home/vakho/mysite/static'
  172. STATIC_URL = '/static/'
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement