proxy_requests

a class that uses scraped proxies to make an http GET/POST request (Python requests).

The ProxyRequests class first scrapes proxies from the web

Then it recursively attempts to make a request if the initial request with a proxy is unsuccessful

Requirements: Python 3 and the requests module

Runs on Linux and Windows-may take a moment to run depending on current proxy

Either copy the code and put where you want it, or download via pip:

pip3 install proxy-requests
  from proxy_requests.proxy_requests import ProxyRequests

or if you need the Basic Auth subclass as well:

from proxy_requests.proxy_requests import ProxyRequests, ProxyRequestsBasicAuth

If the above import statement is used, method calls will be identical to the ones shown below

Pass a fully qualified URL when initializing an instance

The ProxyRequestBasicAuth subclass has get, post, post_with_headers, and post_file methods that will override the Parent methods

example GET:
  r = ProxyRequests("https://postman-echo.com/get?foo1=bar1&foo2=bar2")
  r.get()

example POST:
  r = ProxyRequests("url here")
  r.post({"key1": "value1", "key2": "value2"})

example POST with headers:
  r = ProxyRequests("url here")
  r.set_headers({"name": "rootVIII", "secret_message": "7Yufs9KIfj33d"})
  r.post_with_headers({"key1": "value1", "key2": "value2"})

example POST FILE:
  r = ProxyRequests("url here")
  r.set_file({'file': open('test.txt', 'rb')})
  r.post_file()

example GET with Basic Authentication:
  r = ProxyRequestsBasicAuth("url here", "username", "password")
  r.get()

example post with Basic Authentication
  r = ProxyRequestsBasicAuth("url here", "username", "password")
  r.post({"key1": "value1", "key2": "value2"})

example post with headers & Basic Authentication
  r = ProxyRequestsBasicAuth("url here", "username", "password")
  r.set_headers({"header_key": "header_value"})
  r.post_with_headers({"key1": "value1", "key2": "value2"})

example POST FILE with Basic Authentication:
  r = ProxyRequestsBasicAuth("url here", "username", "password")
  r.set_file({'file': open('test.txt', 'rb')})
  r.post_file()

print(r)
  print(r.get_headers())
  print(r.get_status_code())
  print(r.to_json())
  print(r.get_proxy_used())

The to_json() method is not intended to be used for a string of HTML

This was developed on Ubuntu 16.04.4 LTS.

Example 1:
example1



Example 2:
example2

GitHub