main.py 2.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051
  1. import requests
  2. from bs4 import BeautifulSoup
  3. search = []
  4. skip = 0
  5. print(" ┌─────────────────────────────────────────────────────┐")
  6. print(" │ • OpenNet Parser • │")
  7. print(" ├─────────────────────────┬───────────────────────────┤")
  8. print(" │ y - To start searching │ all - Display of all news │")
  9. print(" └─────────────────────────┴───────────────────────────┘")
  10. print("\n [!] Search Keywords:")
  11. while True:
  12. searchInput=input(" & ")
  13. if searchInput == 'y':
  14. break
  15. elif searchInput == ('all'):
  16. search = [' ']
  17. break
  18. else:
  19. search.append(searchInput)
  20. print()
  21. print(" ┌──────────┬──────────┬───────────────────────────────────────────────┬───────────────────────────────────┐")
  22. print(" │ Date │ Srh. key.│ Link │ News │")
  23. print(" └──────────┴──────────┴───────────────────────────────────────────────┴───────────────────────────────────┘")
  24. while True:
  25. try:
  26. url = "https://opennet.ru/opennews/index.shtml?skip={}&news=open&template=0".format(str(skip))
  27. page = requests.get(url)
  28. soup = BeautifulSoup(page.text, 'html.parser')
  29. dates = soup.find_all('td', class_='tdate')
  30. news = soup.find_all('a', class_='title2')
  31. for i in range(0 , len(news)):
  32. for keyword in search:
  33. if keyword in news[i].text:
  34. print("░ "+dates[i].text,end=' ')
  35. print(keyword.center(10),end=' ')
  36. print("https://opennet.ru"+news[i].get('href'),end=' ')
  37. print(news[i].text)
  38. skip += 15
  39. except KeyboardInterrupt:
  40. print("\n\n [!] Operation terminated by user\n")
  41. break
  42. input(" [*] Enter - exit")