Skip to content

Instantly share code, notes, and snippets.

@snehesht
Created August 5, 2018 14:33
Show Gist options
  • Save snehesht/79ac60ae707bd271ff832dfe306f7089 to your computer and use it in GitHub Desktop.
Save snehesht/79ac60ae707bd271ff832dfe306f7089 to your computer and use it in GitHub Desktop.
SSL Proxies
import re, requests, json;
from html.parser import HTMLParser
class SSLParser(HTMLParser):
def handle_data(self, data):
self.result.append(data)
def setup(self):
self.result = [];
def read(self):
return self.result
class SSLFetch():
def __init__(self):
self.result = [];
data = self.fetch()
self.parse(data);
def fetch(self):
r = requests.get("https://www.sslproxies.org/")
return r.text
def parse(self, data):
match = re.findall(r"<tbody><tr>.*</tr></tbody>", data)
matches = match[0].replace("<tr>","\n").replace("</tr>", "").replace("<tbody>", "").replace("</tbody>", "");
parser = SSLParser()
for m1 in matches.split("\n"):
parser.setup()
parser.feed(m1)
m1data = parser.read()
if len(m1data) > 0:
m1res = {
"ip": m1data[0],
"port": m1data[1],
"country_code": m1data[2],
"country_name": m1data[3],
"type": m1data[4],
"google": m1data[5],
"https": m1data[6],
"last_seen": m1data[7]
}
self.result.append(m1res)
def get(self):
return json.dumps(self.result)
proxies = SSLFetch();
print(proxies.get())
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment