Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import http.client
- from bs4 import BeautifulSoup
- conn = http.client.HTTPConnection('2ch.hk')
- conn.request('GET', '/', None, {'Accept': 'text/plain'})
- res = conn.getresponse()
- data = res.read()
- conn.close()
- soup = BeautifulSoup(str(data))
- cap = soup.find(id='challenge-form')
- src = cap.noscript.iframe['src'][2:]
- reqsrc = '/'.join(src.split('/')[1:])
- conn = http.client.HTTPConnection(src.split('/')[0])
- conn.request('GET', '/' + reqsrc, None, {'Accept': 'text/plain'})
- res = conn.getresponse()
- data2 = res.read()
- conn.close()
- soup2 = BeautifulSoup(str(data2))
- cform = soup2.html.body.form
- imgsrc = cform.img['src']
- imgsrc = '/'.join(src.split('/')[1:-1]) + '/' + imgsrc
- conn = http.client.HTTPConnection(src.split('/')[0])
- conn.request('GET', '/'+imgsrc, None, {'Accept': 'text/plain'})
- res = conn.getresponse()
- data3 = res.read()
- conn.close()
- '''image=open('.\\newimage.jpg', 'wb')
- image.write(data3)
- image.close()'''
- import os, sys
- from tkinter import *
- from tkinter import ttk
- from PIL import Image, ImageTk
- from io import BytesIO
- root = Tk()
- root.title('CAPTCHA')
- imagedata = BytesIO(data3)
- captcha = ImageTk.PhotoImage(Image.open(imagedata))
- panel = Label(root, image=captcha)
- panel.grid(row=0)
- edit = Entry(root)
- edit.grid(row=1)
- solution = ''
- def submit():
- global solution
- solution = edit.get()
- root.quit()
- button = Button(root, text='submit', command = submit)
- button.grid(row=2)
- edit.focus_set()
- #edit.bind('<Return>', submit)
- root.mainloop()
- import urllib.parse
- params = urllib.parse.urlencode({'recaptcha_challenge_field': cform.find(id='recaptcha_challenge_field')['value'],
- 'recaptcha_response_field': solution})
- conn = http.client.HTTPConnection(src.split('/')[0])
- conn.request('POST', '/' + reqsrc, params, {'Accept': 'text/plain', 'Content-type': 'application/x-www-form-urlencoded', 'host': src.split('/')[0]})
- res = conn.getresponse()
- data4 = res.read()
- recap = BeautifulSoup(str(data4))
- recap = recap.html.body.textarea.string
- conn.close()
- params = urllib.parse.urlencode({'recaptcha_responce_field': 'manual_challenge', 'manual_recaptcha_challenge_field': recap})
- conn = http.client.HTTPConnection('2ch.hk')
- conn.request('GET', cap['action'], params, {'Accept': 'text/plain', 'Content-type': 'application/x-www-form-urlencoded'})
- res = conn.getresponse()
- data5 = res.read()
- headers = res.getheaders()
- cookies = dict(str(str(h[1]).split(';')[0]).split('=') for h in headers if h[0]=='Set-Cookie')
- conn.close()
- print(str(data5))
- print('----------------------------')
- print(headers)
- print('----------------------------')
- print(cookies)
- params = urllib.parse.urlencode(cookies)
- conn = http.client.HTTPConnection('2ch.hk')
- conn.request('GET', '/', params, {'Accept': 'text/plain'})
- res = conn.getresponse()
- print(res.status)
- print(res.getheaders())
- data6 = res.read()
- print(str(data6))
- conn.close()
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement