from threading import Thread
import requests
import random
import json
import mysql.connector
from queue import Queue
concurrent = 50
username = "100076960714692"
password = "xtwrljpwx7g"
def update_time(url):
  mydb = mysql.connector.connect(
  host="localhost",
  user="root",
  password="Sameerrao2SS",
  database="fb"
)
  mycursor = mydb.cursor()
  sql = "INSERT IGNORE INTO test1 (cdn,called) VALUES (%s,%s)"
  val = (url,'NULL')
  mycursor.execute(sql,val)
  mydb.commit()







headers = {
    'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:84.0) Gecko/20100101 Firefox/84.0',
    'Accept': '*/*',
    'Accept-Language': 'en-US,en;q=0.5',
    'Referer': 'https://www.facebook.com/chinabusinesses/onboarding',
    'Content-Type': 'application/x-www-form-urlencoded',
    'Origin': 'https://www.facebook.com',
    'DNT': '1',
    'Connection': 'keep-alive',
    'TE': 'Trailers',
}


def doWork():
    while True:
        url = q.get()

        status, url = getStatus(url)
        doSomethingWithResult(status, url)
        q.task_done()


def getStatus(ourl):
    try:






       response = requests.get('https://www.facebook.com/ajax/bootloader-endpoint/?modules='+ourl, headers=headers)
       sss = response.text.split('https:')
       for ssss in sss:
        url = ssss.split('"')
        for url in url:
         if "rsrc.php" in url:
          if ".js" in url:
           url = url.split('?')
           url = url[0].replace("\/","/")
           url = "https:"+url
           print(url)
           update_time(url)



















       return "c=",ourl



    except:
         return "error", ourl

mydb = mysql.connector.connect(
  host="localhost",
  user="root",
  password="Sameerrao2SS",
  database="fb"
)
mycursor = mydb.cursor()


sql = "SELECT * FROM module WHERE called='TRUE'"
mycursor.execute(sql)

myresult = mycursor.fetchall()



def doSomethingWithResult(status, url):
    print (status, url)

q = Queue(concurrent * 2)
for i in range(concurrent):
    t = Thread(target=doWork)
    t.daemon = True
    t.start()
try:

    for x in myresult:

       q.put(x[0])
    q.join()
except KeyboardInterrupt:
    sys.exit(1)
