Pella86

Telegram scraper no cli no bot

Jun 9th, 2018
84
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 1.26 KB | None | 0 0
  1. # -*- coding: utf-8 -*-
  2. """
  3. Created on Fri Jun  8 19:29:06 2018
  4.  
  5. @author: Mauro
  6. """
  7. import requests
  8. import os
  9. import re
  10. import time
  11. import pickle
  12. import ssl
  13.  
  14.  
  15. last_message_id = 462254
  16.  
  17. dump_folder = "./messages/"
  18.  
  19. if not os.path.isdir(dump_folder):
  20.     os.mkdir(dump_folder)
  21.        
  22. req_counter = 0
  23. for i in range(last_message_id):
  24.     mid = last_message_id - i
  25.    
  26.     print("scraping message id ", mid, "...")
  27.    
  28.     filename = "mid_" + str(mid) + ".pickle"
  29.     if os.path.isfile(dump_folder + filename):
  30.         continue
  31.    
  32.     r = None
  33.    
  34.     try:
  35.         r = requests.get("https://t.me/Scienza/" + str(mid) + "?embed=1")
  36.         req_counter += 1
  37.     except ssl.SSLError as ssle:
  38.         print(ssle)
  39.        
  40.         print("waiting...")
  41.         time.sleep(10)
  42.         print("restarting...")
  43.    
  44.     except Exception as e:
  45.         print(e)
  46.         raise e
  47.    
  48.     finally:
  49.         print("requests till now", req_counter)
  50.    
  51.    
  52.     if r is not None and r.status_code == 200:
  53.         with open(dump_folder + filename, "wb") as f:
  54.             pickle.dump(r, f)
  55.     elif r is not None:
  56.         print(r.status_code)
  57.         print("requests till now", req_counter)
  58.         raise Exception
  59.    
  60.     time.sleep(0.11)
Add Comment
Please, Sign In to add comment