Advertisement
Guest User

Untitled

a guest
Nov 16th, 2019
72
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.20 KB | None | 0 0
  1. from bs4 import BeautifulSoup
  2. import requests
  3. import re
  4. import copy
  5.  
  6.  
  7. def validator(string, lesson):
  8. phone_valid = re.compile(r'(?:(?:\+?([1-9]|[0-9][0-9]|[0-9][0-9][0-9])\s*(?:[.-]\s*)?)?(?:\(\s*([2-9]1[02-9]|[2-9][02-8]1|[2-9][02-8][02-9])\s*\)|([0-9][1-9]|[0-9]1[02-9]|[2-9][02-8]1|[2-9][02-8][02-9]))\s*(?:[.-]\s*)?)?([2-9]1[02-9]|[2-9][02-9]1|[2-9][02-9]{2})\s*(?:[.-]\s*)?([0-9]{4})(?:\s*(?:#|x\.?|ext\.?|extension)\s*(\d+))?')
  9. res = phone_valid.findall(str(string))
  10. if res:
  11. lesson['Number'] = ''.join(res[0])
  12. return lesson
  13.  
  14. return lesson # if all false
  15.  
  16.  
  17.  
  18. link = 'http://localhost:63342/help_to_anybody/test.html?_ijt=sjk5nts2u87dpa6l6h5urrsh57'
  19. page = requests.get(link)
  20. soup = BeautifulSoup(page.content, "html.parser")
  21.  
  22. lessons = []
  23. lesson = {
  24. 'Number': None,
  25. 'Name': None,
  26. 'Teachers': [],
  27. 'Type': None,
  28. 'Time': None,
  29. 'Room': None,
  30. }
  31. current_lesson = copy.deepcopy(lesson)
  32. for i in soup.find_all('p'):
  33. if all(current_lesson.values()):
  34. lessons.append(current_lesson)
  35. current_lesson = copy.deepcopy(lesson)
  36.  
  37. current_lesson = validator(i.get_text, current_lesson)
  38. print(current_lesson)
  39.  
  40. print(lessons)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement