12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091 |
- import requests as rq
- import json as js
- import random as rn
- import dpath.util as dp
- import urwid as ur
- from api import SAPI as sa
- from rich import print as ri
- ## funcs
- def post():
- proxyifelse = len(toproxy)
- if proxyifelse == 0:
- r = rq.post(url = url+"post.php", data = data.encode('utf8'), headers = headers)
- print(r.text)
- else:
- pr=open(toproxy,"r")
- m=pr.readlines()
- l=[]
- for i in range(0,len(m)-1):
- x=m[i]
- z=len(x)
- a=x[:z-1]
- l.append(a)
- l.append(m[i+1])
- o=rn.choice(l)
- pr.close()
- while True:
- proxytype = input("what proxy you use? (example socks4) = ")
- if proxytype == "http":
- proxy = {"http": o}
- break
- elif proxytype == "https":
- proxy = {"https": o}
- break
- else:
- if proxytype == "socks4":
- proxy = {"socks4": o}
- break
- elif proxytype == "socks5":
- proxy = {"socks5": o}
- break
- else:
- print("incorrect proxy type")
- continue
- r = rq.post(url = url+"post.php", data = data.encode('utf8'), headers = headers, proxies = proxy)
- print(r.text)
- ## input / delete later
- board = input('board? = ')
- thread = input('thread? = ')
- name = input('name? (optionally) = ')
- text = input('text? = ')
- ## data, headers, proxy
- url = "https://spirech.org/"
- headers = {
- "User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/105.0.0.0 Safari/537.36",
- "Accept": "*/*",
- "Accept-Language": "en-US,en;q=0.5",
- "X-Requested-With": "XMLHttpRequest",
- "Content-Type": "multipart/form-data; boundary=---------------------------180304545935080905253816794105",
- "Sec-Fetch-Dest": "empty",
- "Sec-Fetch-Mode": "cors",
- "Sec-Fetch-Site": "same-origin"
- }
- data = "-----------------------------180304545935080905253816794105\r\nContent-Disposition: form-data; name=\"username\"\r\n\r\nТлЭ?еыдF;ЫwБг7ша\r\n-----------------------------180304545935080905253816794105\r\nContent-Disposition: form-data; name=\"МЭsБУ8х0йюучoЁо\"\r\n\r\nъdD=m~ю1М/'p{i:[Mа@)ТoЧвbz \\еy8IP2рЗ3Cт\r\n-----------------------------180304545935080905253816794105\r\nContent-Disposition: form-data; name=\"name\"\r\n\r\n"+ name +"\r\n-----------------------------180304545935080905253816794105\r\nContent-Disposition: form-data; name=\"lastname\"\r\n\r\n\r\n-----------------------------180304545935080905253816794105\r\nContent-Disposition: form-data; name=\"email\"\r\n\r\n\r\n-----------------------------180304545935080905253816794105\r\nContent-Disposition: form-data; name=\"subject\"\r\n\r\n\r\n-----------------------------180304545935080905253816794105\r\nContent-Disposition: form-data; name=\"body\"\r\n\r\n"+ text +"\r\n\r\n-----------------------------180304545935080905253816794105\r\nContent-Disposition: form-data; name=\"file[]\"; filename=\"\"\r\nContent-Type: application/octet-stream\r\n\r\n\r\n-----------------------------180304545935080905253816794105\r\nContent-Disposition: form-data; name=\"password\"\r\n\r\nYJI_$3rZ\r\n-----------------------------180304545935080905253816794105\r\nContent-Disposition: form-data; name=\"еЛгj3ЩлoръedЙИэЁsxyхfёНБ7r\"\r\n\r\nE8_-?j4гXа%ьНец6ASw|й9\\дv7Fщ,(>rtBMyVQka={чо$з]ZDЮuПJ2iФ~ЗвHШnTы ;[:ЪЧЕЖ<\r\n-----------------------------180304545935080905253816794105\r\nContent-Disposition: form-data; name=\"l8xfШ0ЖёюГЮ\"\r\n\r\n\r\n-----------------------------180304545935080905253816794105\r\nContent-Disposition: form-data; name=\"thread\"\r\n\r\n"+ thread +"\r\n-----------------------------180304545935080905253816794105\r\nContent-Disposition: form-data; name=\"board\"\r\n\r\n"+ board +"\r\n-----------------------------180304545935080905253816794105\r\nContent-Disposition: form-data; name=\"ЬжтЫqГh5aИН2КТвяз3fУиmъ\"\r\n\r\n/,\\эсQ|M2{СbgцYDеBjжХ^КёыЮUkлI]Ц~$ь5Sч<\r\n-----------------------------180304545935080905253816794105\r\nContent-Disposition: form-data; name=\"hash\"\r\n\r\n2790a226cb37f822f9d699865b16e9a71b81f2f3\r\n-----------------------------180304545935080905253816794105\r\nContent-Disposition: form-data; name=\"q\"\r\n\r\n*Г@рЬёцRd=,л6ъ}ьх Ъ9ЦЮ`D+гЧoыSEX^hоt1_ияGе&ам Л<nQHш\r\n-----------------------------180304545935080905253816794105\r\nContent-Disposition: form-data; name=\"json_response\"\r\n\r\n1\r\n-----------------------------180304545935080905253816794105\r\nContent-Disposition: form-data; name=\"no_dnd\"\r\n\r\n1\r\n-----------------------------180304545935080905253816794105\r\nContent-Disposition: form-data; name=\"post\"\r\n\r\nНовый ответ\r\n-----------------------------180304545935080905253816794105--\r\n"
- ## proxy reading / not important
- toproxy = input("proxie file? (like /home/name/http.txt) (optionally) = ")
- ## get text from post|get thread js / make it better
- response = rq.get(url + board +'/res/'+ thread +'.js')
- #obj = js.loads(response.text)
- #with open('.json', 'w+') as outfile:
- # obj = js.loads(response.text)
- # js.dump(obj, outfile)
- #with open('.json') as json_file:
- #data = js.load(json_file)
- #res = dp.values(data, "/posts/*/com")
- #print(res)
- post()
|